GSOC Application 2013Project Sharing website (Rhythm Gupta)

'''

About You
 Name''': Rhythm Gupta

Email Address: rhythm.gupta21@gmail.com

Blog URL: rhythmgupta.tumblr.com

Sugar Labs wiki username: rhythmgupta

Freenode IRC Nick: rhythmgupta

What is your primary language?


 * I usually converse in English and sometimes Hindi.

Where are you located, and what hours do you tend to work?


 * I live in New Delhi, India. (+5.30 GMT) But I’m pretty flexible with my work timings. I usually work late at nights.

'''Have you participated in an open-source project before? If so, please send us URLs to your profile pages for those projects, or some other demonstration of the work that you have done in open-source. If not, why do you want to work on an open-source project this summer?'''


 * No, I haven’t.

About Your Project
'''Name of your project?

Project Sharing Website

'''Describe your project in 10-20 sentences. What are you making? Who are you making it for, and why do they need it? What technologies (programming languages, etc.) will you be using?'''

The idea is to create a platform where kids can share their projects that they have created using various Sugar activities like Physics, Turtle Block, Memorize etc. It would be a great tool for kids could find new interesting projects, share their own projects, comment on their peers’ project and favourite them.

I’ll be using PHP and Mysql as my programming languages for back-end while Javascipt, HTML5 and CSS3 will be used for front end. I’ll be using Zend framework for the website. The website will be created for modern web browsers and because of increasing usage of devices such as tablets and phones, the website will be responsive so that kids can browse the project galleries on their phones as well. I’ll be using elgg, a FOSS social networking engine as a building block to create the project sharing website.

As yet, there are many ideas regarding what all can be implemented with the website. It probably needs more thinking on what all we can implement. We need to prioritize all of these ideas. For sure, my project will change over the summer. Ideas will be discussed, added and some maybe deleted. What I lay down here are the basic essentials that I think the website must have. I will list out a schedule, but it is only a very rough timeline.

Deliverables:

1. Go Social

This includes the ability to share projects with their friends and classmates. The greater involvement of social networks in our lives makes it apparent that this functionality should be present in the website. Apart from conventional sign up, there will be options to sign up with facebook, twitter and google accounts. Kids can then share their projects on facebook, twitter etc.

2.Share from Different Sugar Activities

This includes the ability to “directly” share on the website from different sugar activities. I’ll create an API for sharing onto website which could then be integrated with all the sugar activities. I’ll also create a “share to website” widget which could be directly inserted within the activity. It would be as simple as copy pasting few lines of code.

3.Galleries

The user could create his own galleries of projects. User can save his favourite projects, projects on physics, his projects in specific locations, he could also share the collection of his projects on his social networks. It will be similar to creating playlists on your mp3 player.

4.Internationalization

For multiple language supports, I’ll use FOSS gettext for PHP, and PHP 5.3 also have native i18n support. Zend’s Framework Zend_translate and related components will also be used.

5.Trending/popular Projects

There will be sections for trending and popular projects, similar to scratch website. We can also have a trending categories for each of the sugar activities. For ex. Most viewed project of Etoys, Trending projects in Memorize etc.

What is the timeline for development of your project?

Description (by timeline)

My college classes starts early but summer break starts early too. It starts around 40 days before the GSOC’s ‘official coding’ starts. So I’ll have a head start of about 40 days before Google’s Official Coding starts. I plan to start coding after my college exams ends on May 8. This gives me around 12 weeks before Mid-Term Evaluation. I plan to finish most of my work till then. Documentation, Commenting will be done side by side with coding. I’ll be in touch with my mentor. I’ll write a blog which will be updated every week with the progress on the website.

Here is a tentative week by week timeline:

What are your past experiences?

I'm a sophomore pursuing Bachelors in department of Computer Science and Engineering in Indian Institute of Technology. I've been doing web development from past 2 years. Relevant Courses I've taken are:
 * CSP 302: Design Practices
 * In CSP302, I created a social analytics web dashboard to analyze the activity of a social website with million of users and data edges between them. I used Django as my web framework and D3.js(a javascript library) for visualizing and analyzing the data sets.

Experience: I created the website Bookatdoor, a startup in India. It was made within 6 weeks and I coded in PHP, Mysql, jquery and css.