Summer of Code/2016/SugarJournalSaveOption UtkarshT: Difference between revisions

 
(14 intermediate revisions by the same user not shown)
Line 4: Line 4:
'''What is your name?'''
'''What is your name?'''


My name is <b>Utkarsh Tiwari</b>, and I am a 2nd year undergraduate student at [http://jiit.ac.in Jaypee Institute of  Information Technology], India.
My name is <b>Utkarsh Tiwari</b>, and I am a 3rd year undergraduate student at [http://jiit.ac.in Jaypee Institute of  Information Technology], India.




Line 33: Line 33:
'''Time Zone:''' UTC + 5:30 (India Standard Time)
'''Time Zone:''' UTC + 5:30 (India Standard Time)


'''Working hours:''' I usually tend to work in afternoons (1PM-5PM) and nights (9PM-2AM). I will try to be mostly active when most of the mentors come on IRC.
'''Working hours:''' I usually tend to work in afternoons (1PM-5PM) and nights (9PM-2AM). I will remain active on irc during my working hours.


'''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?'''
'''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?'''
Line 58: Line 58:


I have also completed the <b>Hindi translations</b> of activities listed below->
I have also completed the <b>Hindi translations</b> of activities listed below->
 
<b><br>
Sugar(core)<br>
Sugar(core)<br>
Turtleart<br>
Turtleart<br>
Line 68: Line 68:
Card sort<br>
Card sort<br>
ImageViewer<br>
ImageViewer<br>
Physics <br>
Physics <br> </b>


Pootle profile link-[http://translate.sugarlabs.org/accounts/iamutkarshtiwari/ iamutkarshtiwari] <br>
Pootle profile link-[http://translate.sugarlabs.org/accounts/iamutkarshtiwari/ iamutkarshtiwari] <br>
Line 140: Line 140:
Here is a flowchart to demonstrate the above proposed mechanism->  
Here is a flowchart to demonstrate the above proposed mechanism->  


              http://imgur.com/erPemnF.png
*''' What is the timeline for development of your project? The Summer of Code work period is from mid-May  to mid-August; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (end of June); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then. '''
'''<br>
<br>
'''
{| class="wikitable"
! style="width: 150px;" | Days
!Task
|-
|24th April to 9th May
|
* Community bonding period.
* Gain consensus of the community on the designs and UI of the proposed features.
* Understand the working of Sugar codebase ( I already have some handson experience with Sugar)
* Discuss the specifications of all the features proposed with Mr.Tony Anderson and other community members.
|-
|10th May to 30th May
|Start developing 'save as' alert popup.
* Write a new alert popup module wrapped over Alert class of Suga-toolkit-gtk3.
* Integrate the alert module to the Sugar activity base class.
* Code the automatic save feature to the resumable activities.
|-
|31 May to 1st June
|Send in patches to be reviewed by community.
Make necessary changes as per suggestions by the mentor.
|-
|2nd June to 15th June
|Start writing the screenshot popup alert.
* Code a new screenshot popup alert module include text entry, screenshot preview and interactive buttons.
* Make adjustments to the activity base class file and to home view to make the module compatible with them.
|-
|16th June to 17th June
|Send in patches for review by the mentor.
Make necessary modifications to the patches.
|-
|18th June to 24th June
|Discuss the backend working of the feature with mentor.
Design the layout for the user interface modications.
Start working on activity resume feature.
|-
|25th June to 26th June
|Prepare for midterm evaluation.
Re-evaluate the submitted patches and update the documentations.
'Save As' alert and Screenshot alert would be implemented by the midterm evaluation.
|-
|27th June to 28th June
|'''Midterm Evaluation'''
|-
|29th June to 5th July
|Buffer Week
|-
|6th July to 15th July
|Continue with the work on 'Activity resume' feature.
Work on the home view to implement one Click and <Alt>Click start/resume facility.
|-
|16th July to 17th July
|
* Send in patch for review.
* Test the overall stability of the all the implemented features.
|-
|18th July to 19th July
| Would like to a day or 2 days off.
|-
|20 July to 15 July
|Discuss the Sugar backup-restore specifications with the mentor.
* Understand the current backup/restore mechanism as developed by Mr.Martin Langhoff.
* Redesign the resync feature and add user selection based upload to Owncloud repository.
* Code the automatic garbage cleanup to free up space occupied by unnecessary(least frequently used) activities.
* Implement the selection based download feature from the Owncloud repository.
* Modify the read/write access to the online cloud storage in accordance with the implemented features.
|-
|16 August to 18 August
|
* UI improvements.
* Improve code efficiency.
* Send PRs for review from community members.
|-
|19 August to 22 August
|
* Fix bugs.
* Document the implemented feature on respective wiki pages and describe the features.
* Add comments that will help further development.
|-
|23 August
|'''Final Evaluation'''
|}
*''' Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant. '''


The number of activities (visually attractiveǃ) that I had developed since last year shows my dedication towards Sugar community.
My developer profile - [http://activities.sugarlabs.org/en-US/sugar/user/13555 http://activities.sugarlabs.org/en-US/sugar/user/13555]<br>
I have also been contributing to The Processing Foundation since last December which made me. (commits linked above)


I have also worked on some projects in my school, knowledge of which will help me in accomplishing the proposed tasks for this summer-


* What is the timeline for development of your project? The Summer of Code work period is from mid-May  to mid-August; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (end of June); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.
* Design a GUI on JavaFX and Swing with basic Git features like branch, merge, diff, commit, revert, etc. alongwith Dropbox API integration to provide online repository storage- [https://github.com/iamutkarshtiwari/raptor https://github.com/iamutkarshtiwari/raptor]
* Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.
 
* Flappy bird design on C language-[https://github.com/iamutkarshtiwari/Flappy-Bird-on-C- https://github.com/iamutkarshtiwari/Flappy-Bird-on-C-]
* Snake game module on C- [https://github.com/iamutkarshtiwari/Snake-game-module]


===You and the community===
===You and the community===
* If your project is successfully completed, what will its impact be on the Sugar Labs community? Give 3 answers, each 1-3 paragraphs in length. The first one should be yours. The other two should be answers from members of the Sugar Labs community, at least one of whom should be a Sugar Labs GSoC mentor. Provide email contact information for non-GSoC mentors.
* '''If your project is successfully completed, what will its impact be on the Sugar Labs community? Give 3 answers, each 1-3 paragraphs in length. The first one should be yours. The other two should be answers from members of the Sugar Labs community, at least one of whom should be a Sugar Labs GSoC mentor. Provide email contact information for non-GSoC mentors.'''
* What will you do if you get stuck on your project and your mentor isn't around?
 
* How do you propose you will be keeping the community informed of your progress and any problems or questions you might have over the course of the project?
Me-
 
Mr. Tony Anderson-
 
Mr. Walter Bender-
 
Mr. Sam Parkinson-
 
* '''What will you do if you get stuck on your project and your mentor isn't around?'''
If my mentor is not around, there would be other open source developers on IRC whom I can reach out for help. I also have a lot of seniors in my college who have been working on wide range of open source projects (like MWOS, OWASP, GSoC) and they are very helpful. So there are a lot of ways I can tackle a problem I'm stuck on when my mentor isn't available. Well thoughout my previous development experience 'StackOverflow' has been a lot useful, so I can also look up for the solution there. In worst case, I will try to look up for the solution on the internet as I usually do and tackle the problem myself.
 
* '''How do you propose you will be keeping the community informed of your progress and any problems or questions you might have over the course of the project?'''
 
I am planning on maintaining a wiki page every weekend regarding the project. As far daily progress is concerned, I will pass on the project links to my mentor on IRC whenever I'll find him active to get a quick review. I'll also create a thread on Mailing list to post regular updates regarding the project developments.


===Miscellaneous===
===Miscellaneous===
* We want to make sure that you can set up a [http://developer.sugarlabs.org development environment] before the summer starts. Please do ''one'' of the following:
* We want to make sure that you can set up a [http://developer.sugarlabs.org development environment] before the summer starts. Please do ''one'' of the following:
** Send us a link to a screenshot of your Sugar development environment with the following modification: when you hover over the XO-person icon in the middle of Home view, the drop-down text should have your email in place of "logout".
* Send us a link to a screenshot of your Sugar development environment with the following modification: when you hover over the XO-person icon in the middle of Home view, the drop-down text should have your email in place of "logout".


                   http://imgur.com/kZwyivD.png
                   http://imgur.com/kZwyivD.png


** Send us a link to a pull request or merge request you have made on a Sugar or Sugar activity bug.
** '''Send us a link to a pull request or merge request you have made on a Sugar or Sugar activity bug.'''


I have added some long needed features to Browse activity and Sugar Journal. PRs (<b>Screenshots attached in the PR comment section </b>) -><br><br>
I have added some long needed features to Browse activity and Sugar Journal. PRs (<b>Screenshots attached in the PR comment section </b>) -><br><br>
Line 163: Line 278:
*Added download progress tool icon to [BROWSE]ː  [https://github.com/sugarlabs/browse-activity/pull/24 https://github.com/sugarlabs/browse-activity/pull/24] <b>(Reviewed)</b><br>
*Added download progress tool icon to [BROWSE]ː  [https://github.com/sugarlabs/browse-activity/pull/24 https://github.com/sugarlabs/browse-activity/pull/24] <b>(Reviewed)</b><br>


*Improved autocomplete list [BROWSE]ː  [https://github.com/sugarlabs/browse-activity/pull/27 https://github.com/sugarlabs/browse-activity/pull/27]<b>(Reviewed)</b> <br>
*Improved autocomplete list [BROWSE]ː  [https://github.com/sugarlabs/browse-activity/pull/27 https://github.com/sugarlabs/browse-activity/pull/27]<b>(Merged)</b> <br>


*Improved bookmark management of [BROWSE]ː  [https://github.com/sugarlabs/browse-activity/pull/26 https://github.com/sugarlabs/browse-activity/pull/26]<b>(Reviewed)</b> <br>
*Improved bookmark management of [BROWSE]ː  [https://github.com/sugarlabs/browse-activity/pull/26 https://github.com/sugarlabs/browse-activity/pull/26]<b>(Reviewed)</b> <br>
Line 177: Line 292:
*Added keyboard accessibility to [JOURNAL]ː  [https://github.com/sugarlabs/sugar/pull/667 https://github.com/sugarlabs/sugar/pull/667]<b>(Reviewed)</b> <br >
*Added keyboard accessibility to [JOURNAL]ː  [https://github.com/sugarlabs/sugar/pull/667 https://github.com/sugarlabs/sugar/pull/667]<b>(Reviewed)</b> <br >


* Describe a great learning experience you had as a child.
* '''Describe a great learning experience you had as a child.'''
 
When I was child, most of my learning was because the games(chinese checkers, scribble, puzzles, etc) I used to play my at my school. Since I am pretty good at geometry, my teacher being impressed with my skills once asked me to help her teach other students to draw different geometrical figures using basic tools like-compass, protractor, divider and set-squares. It made me feel really nice helping others with their learning. I owe my logical thinking to the games I used to play when I was a kid.




* Is there anything else we should have asked you or anything else that we should know that might make us like you or your project more?
* '''Is there anything else we should have asked you or anything else that we should know that might make us like you or your project more?'''
I am pretty good at taking up challenging tasks(I introduced some cool features in Sugar that have been requested since a long time ;)) which seem difficult to others. After the completion of my project I would like to continue with my work on adding keyboard accessibility to Journal and download manager improvement in Browse. I am also planning to write an API (as suggested by Mr.Sam Parkinson) to extend keyboard accessibility to Sugar which would help kids to operate Sugar even without a mouse or some other pointing deviceǃ
I am pretty good at taking up challenging tasks(I introduced some cool features in Sugar that have been requested since a long time ;)) which seem difficult to others. After the completion of my project I would like to continue with my work on adding keyboard accessibility to Journal and download manager improvement in Browse. I am also planning to write an API (as suggested by Mr.Sam Parkinson) to extend keyboard accessibility to Sugar which would help kids to operate Sugar even without a mouse or some other pointing device. I would also like to mentor a student in GCI 2017 for Sugarlabs.


Please include the category tag at the bottom of your page the Category tag for 2016 GSoC applications.
Please include the category tag at the bottom of your page the Category tag for 2016 GSoC applications.


[[Category:2016 GSoC applications]]
[[Category:2016 GSoC applications]]