Changes

Jump to navigation Jump to search
551 bytes added ,  12:28, 25 March 2018
Added more details to the timeline
Line 28: Line 28:  
GTK is the underlying UI framework of Sugar and therefore is largely used in the whole codebase, including the currently available activities. Many of these activities were written using GTK2 which is now at its life's end. In order to make sure that the activities that are using GTK2 remain supported on newer versions of Sugar which will continuously make use of newer technologies, we must port them to the currently available GTK3 widget toolkit.
 
GTK is the underlying UI framework of Sugar and therefore is largely used in the whole codebase, including the currently available activities. Many of these activities were written using GTK2 which is now at its life's end. In order to make sure that the activities that are using GTK2 remain supported on newer versions of Sugar which will continuously make use of newer technologies, we must port them to the currently available GTK3 widget toolkit.
 
Since activities represent a very important part of Sugar, this project will be beneficial to its end-users who will be able to enjoy their favourite activities without encountering any problems on the present and future releases of Sugar and it will also be beneficial to developers who will be able to expand these activities using GTK3's features and more easily port them to GTK4 when it becomes available.
 
Since activities represent a very important part of Sugar, this project will be beneficial to its end-users who will be able to enjoy their favourite activities without encountering any problems on the present and future releases of Sugar and it will also be beneficial to developers who will be able to expand these activities using GTK3's features and more easily port them to GTK4 when it becomes available.
In order to complete this project, I will use Python, the GTK3 toolkit and the Python binding of it, the PyGObject libraries, the Sugar Toolkit GTK3, Flake8 and any other technology that becomes necessary during the project.
+
In order to complete this project, I will use Python, the GTK+3 toolkit and the Python binding of it, the PyGObject libraries, the Sugar Toolkit GTK3, Flake8 and any other technology that becomes necessary during the project.
 
* 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 40: Line 40:  
|23-04 -> 14-05
 
|23-04 -> 14-05
 
|Community bonding: attend as many IRC meetings as possible in order to get up to date with what the Sugar Labs community is currently working on and create a small database of all the original and highly involved contributors to the activities that I will port so in case that I need some specific information about a particular activity that I cannot find otherwise, I can try to get in touch with them.
 
|Community bonding: attend as many IRC meetings as possible in order to get up to date with what the Sugar Labs community is currently working on and create a small database of all the original and highly involved contributors to the activities that I will port so in case that I need some specific information about a particular activity that I cannot find otherwise, I can try to get in touch with them.
 +
Ask for advice on how my workflow should look like.
 
|-
 
|-
| 1 to 4.5 || 14-05 -> 15-06 || Finish my semester and take my final exams while researching more on GTK+ and the differences between GTK+2 and GTK+3, PyGTK, GTS, Sugar 3 toolkit and port activity 1.
+
| 1 to 4.5 || 14-05 -> 15-06 || Finish my semester and take my final exams while researching more on GTK+ and the differences between GTK+2 and GTK+3, PyGTK, GTS, Sugar 3 toolkit.
 +
Port activity 1.
 
|-
 
|-
 
| 5 (remaining of it) || 15-06 -> 17-06 || Port activity 2 and get used to the Sugar Labs coding style.
 
| 5 (remaining of it) || 15-06 -> 17-06 || Port activity 2 and get used to the Sugar Labs coding style.
 
Discuss with the mentors the quality of my work and how I can improve.
 
Discuss with the mentors the quality of my work and how I can improve.
 
|-
 
|-
| 6 || 18-06 -> 24-06 || Port activities 3-6.
+
| 6 || 18-06 -> 24-06 || Port activities 3 - 6.
Start working on creating a small activity on my own in order to further improve my skills.
+
Start working on creating a small activity on my own in order to further improve my skills. Use the "Make your own sugar activities" FLOSS manual as a starting point.
 
|-
 
|-
| 7 || 25-06 -> 01-07 || Port at least another 4 activities
+
| 7 || 25-06 -> 01-07 || Port activities 7 - 10.
 +
Continue to discover best practices for porting activities by communicating with my mentors.
 
|-
 
|-
| 8 || 02-07 -> 08-07 || Port at least another 4 activities
+
| 8 || 02-07 -> 08-07 || Port activities 11 - 14.
 
|-
 
|-
| 9 || 09-07 -> 15-07 || Port at least another 4 activities
+
| 9 || 09-07 -> 15-07 || Port activities 15 - 18.
 
|-
 
|-
| 10 || 16-07 -> 22-07 || Port at least another 4 activities
+
| 10 || 16-07 -> 22-07 || Port activities 19 - 22.
 +
Make sure that anything my mentors suggested at the second evaluation is taken into consideration for improvement.
 
|-
 
|-
| 11 || 23-07 -> 29-07 || Port at least another 4 activities
+
| 11 || 23-07 -> 29-07 || Port activities 23-25.
 +
Start reviewing my work.
 
|-
 
|-
| 12 || 30-07 -> 05-08 || Use this time as a safe margin
+
| 12 || 30-07 -> 05-08 || Look again through the activities that I have ported and integrate any improvements that I have discovered after porting the first ones.
 +
Continue to communicate with my mentors and ask for guidance if I encounter problems during the process.
 
|-
 
|-
| 13 || 06-08 -> 12-08 || Use this time as a safe margin
+
| 13 || 06-08 -> 12-08 || Fix any last problems that are found after reviewing the ports.
 
|}
 
|}
 
* 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.
19

edits

Navigation menu