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 them.
- 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 "Snippet" in menu bar. The Snippet contains the following,
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 more interested to work with Glade, also impressed by "Quickly" too.
I would like to contribute to Quickly and gedit. gedit, is one of my favourite text editor which i use in my day-to-day life. If i do this project, i can get a chance to study the source code of gedit and quickly, to contribute to it.
Please describe a tentative project architecture or an approach to it:
This plug-in is going to add a new option in gedit called "Snippet" on its Menu Bar.
Added "Snippet" consists of 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 :
First, we need to grab the Python Snippets library from Launchpad
- $ bzr branch lp:python-snippets
The above command will grab all the python-snippet from launchpad and download it 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 are initial setups 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 added 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.
All the commands and launchpad processes are done 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. The last 5 options 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 enabling "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
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 (launchpad).
May 22 - June 15
Start to write coding to make plugin to "gedit" i.e. Add patch of code in gedit source.
Write code for Share snippets via gedit for all bazzar commands .
June 18 - July 13
Write code for Share snippets via gedit to access launchpad via API.
Submitting the code for Mid-term evaluation.
July 14 – July 31
Complete the code for share snippet.
Write code for update Snippets.
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?
"Quickly" is launched in the upcoming versions of Ubuntu (from ubuntu 9.10). So this is begining stage for "Quickly".
- If my proposal is accepted, Quickly can be improved, inorder to benefit further releases.
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 days i started working with computer, i play with Ubuntu OS on my desktop.
I had an experience of using other FOSS tools for past two years.
As part of my own interest i and my friends started a LUG in my city(Kanchipuram).
The activities of this LUG includes
To spread the awareness of FOSS
b. Weekend meetings
c. Sharing the knowledge of FOSS technologies
d. Translating Ubuntu-Manual into Tamil
Blog :http://kanchilug.wordpress.com
I am proud to say myself as a Founder/Mentor of Kanchilug.
Availability
How long will the project take? When can you begin?
- I am in my final year M.C.A.My academic project ends on April 14th.I step in to this project from 3rd week of April. I require a maximum period of 3 - 4 months to complete it.
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.I am applying only for this project.
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 ?
- I love to contribute to open source world, which pushed me to participate in Gsoc.
Why did you choose Ubuntu as a mentoring organisation?
From 2008, i started working with computer by having Ubuntu OS as my favourite OS on my desktop.
So i want to contribute to Ubuntu Community from a student level to throughout my life.
Why do you want to participate and why should Ubuntu choose you?
As answered earilier, I have been using ubuntu from its version 8.04, and i have been spreading ubuntu awareness in my college by installing it in more than 100 systems. In our Kanchi Lug also we have spread ubuntu over 200 students of various colleges.
If I get this oppurtunity to contribute to ubuntu, its possible for me to make more contributions and make involve contributors to ubuntu to make it the beautiful operating system.
GSoC/2010/Arulalan (last edited 2010-04-09 15:10:10 by 117)