Arulalan
Please name this wiki page http://wiki.ubuntu.com/GSoC/2010/Arulalan
Arulalan.T
Contact information
- Your Name: Arulalan.T
Email Address: tarulalan@gmail.com
- IRC nickname: arulalan
Launchpad ID: https://launchpad.net/~tarulalan
- Skype username: tarulalan
Webpage/blog: http://tuxworld.wordpress.com
- College-University: Saveetha Engineering College, Chennai,Tamil Nadu, India
- Major: Master of Computer Applications
Project
- Project Name: Quickly and importing snippet
Project Description By Mentor:
- Quickly can be integrated with the python-snippet project to allow user to integrate some code on theme.
- Like "adding dbus support" and that would select and propose the corresponding snippets, a library that
can be plugged into templates and as a gedit plugin will be great.
My Description about this Project:
- We are going to do one plugin to gedit which contain one new Side Panel in left side called "Snippet".
This panel may contain many snippets.
1.See/Read Snippet(Using this we can drag and drop into gedit text field area to view and edit the code of corresponding snippets)
2.Import Snippets ( Importing snippets from the public launchpad domain )
3.Update snippets (Update the snippets from the public launchpad domain )
4.Share Snippet ( It shares to public launchpad domain )
user can change the snippet import / update / share launchpad url at any time.
So, this project is a workflow design "import/ update /share snippets related to dbus" in an effective way and have to integrate it in gedit.
Why did you like this idea?
- I am very much interested do something using glade. By this way i am really impressed by "Quickly".
- I like to contribute to "Quickly" as well as "gedit". Everyday i am using gedit. If i will do this project , then i will study its source code of 'gedit' and 'quickly' and will start to contribute to it.
Please describe a tentative project architecture or an approach to it:
This plug-in going to add one new option in gedit like "Snippet" in its Menu Bar.
This Snippet check box have the following options.
Import Snippets
Update Snippets
Share Snippet
To do all the above processes , we have to use commands in terminal and browse launchpad domain till now.
After finished this project , in "gedit" itself we have GUI option to do all the above processes.
Here i explained about how one developer going to share their snippet to launchpad domain via commands and launchpad procedures.
Import Snippets :
We will first need to grab the Python Snippets library from Launchpad
- $ bzr branch lp:python-snippets
This command will grab all the python-snippet from launchpad and download in to current directory.
Share Snippet :
Assume we created our own snippet . Now its ready to share.
We now need to add our file in our branch using the add command.
Add :$ bzr add your-snippet.py
Now, commit our changes to our local branch with the following command:
Commit :- $ bzr commit
Here we need to type our commit log message .
The following 3 steps for initial setup to share our file to launchpad.
Step 1:
Now we are going to generate our own Public RSA Key to share our program in launchpad.It will help to download other user.
$ ssh-keygen -t rsa
Step 2:
Now we need to copy the our Public RSA Key from ~/.ssh folder.
Step 3 :
Now we need to paste the copied content ( public key ) in our launchpad ssh key.
Login to our launchpad account and grab the create/edit ssh key .
Paste the copied content in "public key line" in our launchpad ssh key page
Now SSH Public Key is successfully added.
Here after we can upload many times our snippets into our launchpad account. The past 3 steps for one/first time process. Then launchpad will remember our home folder and its .ssh public key. So no need to do the above 3 steps while doing next snippet upload/share from this system.
Share Snippet : ( continued ... )
Already we add our snippet and committed to our local bazzar.
Propose it for merging
So, now push it to our own branch on Launchpad:
$ bzr push lp:~<your launchpad username>/python-snippets/<name of your branch>
the propose for merging.
Proposal of this project :
We have seen above , how one developer can share their snippet to public domain.
In this project going to do all the commands and launchpad processes in "gedit" plug-in itself.
User no need to give commands and no need to browse the launchpad page.
Everything should be customized in gedit gui itself.
To synchronize with launchpad from gedit , we are going to use some "API" libraries.
By this way ,
user can do the following options in gedit . . .
Import Snippets
Freshly download snippets from the public launchpad domain . Here URL will be given by the user.
Update Snippets
The snippets are uploaded and upgraded for everyday. So using this option , user can update their snippets with current snippets which are uploaded in launchpad. Here user can use the URL of launchpad/python-snippets domain as default if user like or they can change the url.
Share Snippet
User can do
Add snippet
Commit snippet
Importing public rsa key from user system to launchpad account
Upload snippet to user launchpad account
Push snippet from user launchpad account to public launchpad domain ( i.e. to be shared domain )
Propose for merging
Write description, commit log and etc
Merging snippet with public library
extra ( if need we can include some other options also )
User can do all the above things via gedit gui options. From the option 5 to 9 will be done by using launchpad API and combine with gedit plug-in.
Features :
User can give their needed launchpad url to share their snippets .
- While Importing / uploading / Sharing their snippets , user can use previously used launchpad url by enbling "Default"
option or they can set new url .
Plug-in will remember the past used url links to import / upload/ shared snippets .
For more details about project descriptions with more screen shots, please see the link here .
http://socghop.appspot.com/document/show/user/arulalan/quickly_share_snippets_from_gedit_to_launchpad<<BR>><<BR>><<BR>>
Give us details about the milestones for this project:
April 28 – May 20
Studying the source code of "Quickly".
Studying the source code of "Acire".
Studying the source code of "Gedit".
Understanding how to upload snippet from local system to public domain.
May 22 - June 15
Start to write coding to make plugin to "gedit" i.e. Add patch of code in gedit source.
Import and viewing snippets in gedit.
June 18 - July 13
Write code for Share snippets via gedit.
Submitting the code for Mid-term evaluation.
July 14 – July 31
Testing the plugin.
Documenting.
Completing all other tasks pending.
Test code, improve documentation and fix other bugs and making the code available for final evaluation.
Why will your proposal benefit Ubuntu?
- From ubuntu 9.10 onwards only "Quickly" is launched. So this is begining stage to "Quickly".If my proposal is accepted, then it will be benefit to upcomming version by improving the "Quickly".
Open Source
Please describe any previous Open Source development experience
- My final year project is " Contour Analysis And Visualization ". Using CDAT ( Climate Data Analysis And Tool ) we can plot isolines over world map. I wrote a vcsaddon/plugin to CDAT. That is creating dynamic isotherm lines over any region on world map.
CDAT Link: http://www2-pcmdi.llnl.gov/cdat
In my project i created current Isotherm lines over our Cdat-India Map. by continus study on plotting current isotherm lines over map, a meteorologist can analysis and predict the climate changes.
By adding few files in my plugin, any one can plot current Isotherm lines over any continents/country.
Here is I host my project source code:
http://code.google.com/p/isotherm-lines-over-cdat-map/
Here is my project output:
http://tuxworld.wordpress.com/2010/03/26/24hour-study-on-isotherm-lines-over-india-using-cdat/
Why are you interested in Open Source?
- From the begining in my computer life , i am using ubuntu os and other FOSS Tools for past 2 years. Also I started to
spread about FOSS awareness by conducting Lug meet in my city.
In my city ( Kanchipuram ), we started a Lug with my friends and conducting every weekend lug meeting from past one year.
Blog : http://kanchilug.wordpress.com
I am really proud to say , i am the founder/mentor of Kanchi Lug.
- From the begining in my computer life , i am using ubuntu os and other FOSS Tools for past 2 years. Also I started to
Availability
How long will the project take? When can you begin?
- Now i am doing final year. My Project ends up from on April 14 th. I will start from 3 rd week of april. Maximum 3 to 4 months to complte this project.
How much time do you expect to dedicate to this project? (weekly)
- Saturday and Sunday i can work upto 10 hours . In week days , i can work 10 hours ( 2 hours each day ) So weekly ,i can work approximately 20 hours for this project .
Where will you based during the summer?
- Home town (Have not planned for any vacation tour)
Other
Have you ever participated in a previous GSoC? (describe your project)
- No.
Have you applied for any other 2010 Summer of Code projects? If yes, which ones?
- No . I am applying only for this project.
Why did you apply for the Google Summer of Code ?
- Its my wish to participate in gsoc. Gsoc encouraging students globally to contribute them into open source. By this way i too impressed to apply for gsoc.
Why did you choose Ubuntu as a mentoring organisation?
- I am using computer from 2008 with ubuntu 8.04. So i want to contirubte to our ubuntu as from a student level to through out my life.
Why do you want to participate and why should Ubuntu choose you?
- As answered earilier, I am using ubuntu from 8.04. And i am spreading ubuntu in my college by installing more than 100
systems. In our Kanchi Lug, we spread the ubnutu over 200 various college students.
If ubuntu will choose me to contribute to it , i can make many contributors to ubutntu in many ways not only using it.
- As answered earilier, I am using ubuntu from 8.04. And i am spreading ubuntu in my college by installing more than 100