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

 
(11 intermediate revisions by the same user not shown)
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 145: Line 145:




* 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.
*''' 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. '''




Line 155: Line 155:
!Task
!Task
|-
|-
|31 April to 9 May
|24th April to 9th May
|
|
* Get thorough with Journal code. Analyze its working. I have basic understanding of the code because of my previous contributions to sugar.
* Community bonding period.
* Get a better grip over telepathy salut and gabble.  
* 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.
|-
|-
|10 May to 18 May
|31 May to 1st June
|
|Send in patches to be reviewed by community.
* Analyze more on how collaboration works in sugar.
Make necessary changes as per suggestions by the mentor.
* Develop an outline of the project and more discussion with my mentor Sam and other community members regarding the features that are to be implemented.
|-
|-
|19 May to 31 May
|2nd June to 15th June
|Start developing the “Shared-project” tool.
|Start writing the screenshot popup alert.
* Create a mini-journal instance that will be shared.
* Code a new screenshot popup alert module include text entry, screenshot preview and interactive buttons.
* Design a single mini-journal instance that will handle instances of other shared activities.
* Make adjustments to the activity base class file and to home view to make the module compatible with them.
|-
|-
|1 June to 13 June
|16th June to 17th June
|Implement the File-Syncer System.
|Send in patches for review by the mentor.
* Make this system sync the files when the user does not have the activity running.
Make necessary modifications to the patches.
|-
|-
|14 June to 24 June
|18th June to 24th June
|
|Discuss the backend working of the feature with mentor.
* Test the working of mini-journal system that is in sync with the File-Syncer system.
Design the layout for the user interface modications.
*  Write test cases that can be further used for developing and testing.
Start working on activity resume feature.
|-
|-
|25 June to 26 June
|25th June to 26th June
|Prepare for mid-term evaluation.
|Prepare for midterm evaluation.
* Send patches of the feature completed for review.<br>
Re-evaluate the submitted patches and update the documentations.
The main Shared mini-journal would be implemented till midterm.
'Save As' alert and Screenshot alert would be implemented by the midterm evaluation.
|-
|-
|27 June to 28 June
|27th June to 28th June
|'''Midterm Evaluation'''
|'''Midterm Evaluation'''
|-
|-
|29 June to 5 July
|29th June to 5th July
|Buffer Week
|Buffer Week
|-
|-
|6 July to 9 July
|6th July to 15th July
|Analyze the feedback and clean up the code.
|Continue with the work on 'Activity resume' feature.
Work on the home view to implement one Click and <Alt>Click start/resume facility.
|-
|-
|10 July to 26 July
|16th July to 17th July
|
|
* Add alerts to the file-syncer system that would alert the user for changes in state of shared activity.
* Send in patch for review.
* On completion, send patch for review.
* Test the overall stability of the all the implemented features.
|-
|-
|27 July to 2 August
|18th July to 19th July
|Integrate the Chat Activity in mini-journal.
| Would like to a day or 2 days off.
|-
|-
|3 August to 6 August
|20 July to 15 July
|
|Discuss the Sugar backup-restore specifications with the mentor.
* Implement the “Add new Item” tool.
* Understand the current backup/restore mechanism as developed by Mr.Martin Langhoff.
* Design the File-Chooser Dialog View for Home View.
* 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.
|-
|-
|7 August to 10 August
|16 August to 18 August
|Implement the Icon View for Journal.
|-
|11 August to 17 August
|
|
* UI improvements.
* UI improvements.
* Improve code efficiency.
* Improve code efficiency.
* Test again all the tools and features.
* Send PRs for review from community members.
* Send patches for more reviews.
|-
|-
|18 August to 22 August
|19 August to 22 August
|
|
* Fix bugs.
* Fix bugs.
* Documentation and Update the wiki page of Journal, describe the new features that are added.
* Document the implemented feature on respective wiki pages and describe the features.
* Add comments that will help further development.
* Add comments that will help further development.
|-
|-
Line 228: Line 235:




* 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.
*''' 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-


* 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]


* 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 251: 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 265: 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]]