Changes

Jump to navigation Jump to search
Line 35: Line 35:  
Besides these functionalities, a “teacher of the month” will also be selected and that name will be displayed on homepage of each student, teacher and head. We are team of four working on this software. Technologies we are using include Django 1.5, HTML, CSS, LESS, JavaScript.
 
Besides these functionalities, a “teacher of the month” will also be selected and that name will be displayed on homepage of each student, teacher and head. We are team of four working on this software. Technologies we are using include Django 1.5, HTML, CSS, LESS, JavaScript.
   −
===About your project===
+
== About my project: ==
   −
* What is the name of your project?
+
===== Project name: =====
Port to Python3
+
Port to Python 3
* Describe your project in 10-20 sentences. What are you making? Who are you making it for, and why do they need it? What technologies (programming languages, etc.) will you be using?
  −
Porting to python3, as is clear from the name, Sugar is currently using Python version 2.7 and there are many reasons to port Sugar to Python 3, not the least being its support for internationalization (unicode) is greatly improved over Python 2 (Very important as there are users in >100 languages). The process will start from basic part, working with GTK3 as Sugar and the activities are using it. After making use of GTK3 instead of GTK2, I'll move towards porting Sugar core to Python3. After working with core developer team to decide the strategy: writing Python 2/3 compatible source or a pure port, the remainder of the work will be to do the port itself. Then I'll be developing a robust test suite for it. The last steps will be to Port an activity to Python3 and document the whole process.
  −
I'm doing it for Sugar-bulid project. As it is being used by a number of students, teachers and developers it is always advised to provide them with the latest features and don't stop the developers to use latest versions. Although it has been officially declared that Python 2.7 will be the last version of Python 2 and will receive bug-fixes for many years to come. But as the project is not in panic, it's the right time to port. I'll be using Python, GTK3, github etc.
     −
* What is the timeline for development of your project? The Summer of Code work period is from May 19 - August 22; 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 (27 June); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.
+
===== Brief Summary: =====
 +
Porting to Python 3, as is clear from the name, Sugar is currently using Python version 2.7 The process will start from basic part. I'll port all the dependencies of sugar core to Python 3 including toolkit and telepathy as Sugar and the activities are using them. After this, I'll work with core developer team to decide the strategy: writing Python 2/3 compatible source or a pure port. The remainder of the work will be to do the port of sugar core itself. Then I'll develop a robust test suite for all new code. The last steps will be to Port an activity to Python 3 and beautifully document the whole process. A plan for how to support Sugar as Python 3 and old sugar activities as Python 2 will be the biggest challenge.
   −
{| class="wikitable"
+
===== Need and technologies to be used: =====
|-
+
I'm doing it for Sugar-build project There are many reasons to port Sugar to Python 3, not the least being its support for internationalization (unicode) is greatly improved over Python 2 (Very important as there are users in >100 languages). As Sugar is being used by a number of students, teachers and developers it is always advised to provide them with the latest features and don't stop the developers to use latest versions. Although it has been officially declared that Python 2.7 will be the last version of Python 2 and will receive bug-fixes for many years to come. But as the project is not in any panic, it's the right time to port. I'll be using Python, GTK3, github, unittest library etc.
! Week !! Dates !! Milestones
  −
|-
  −
|  || Pre - 5th May  || Explore about sugar code/GTK and talk to the mentors about whole structure to be followed, get more familiar with the project.
  −
|-
  −
|  || 6th May - 20th May || Planning the strategies and get initial testing done on examples regarding porting of GTK2->GTK3 and Python 2.7->Python 3
  −
|-
  −
| 1 || 20th May - 27th May || Start GTK2->GTK3 porting
  −
|-
  −
| 2 || 28th May - 3rd June || Continue the work
  −
|-
  −
| 3 || 3rd June - 10th June || Show a demonstration
  −
|-
  −
| 4 || 10th June - 17th June || Test and make sure things are stable after using GTK3
  −
|-
  −
| 5 || 17th June - 24th June || Work with sugar core and port it to Python3
  −
|-
  −
| 6 || 24th June - 1st July  || Prepare for Mid Term evaluation
  −
|-
  −
| 7 || 1st July - 8th July || Continue porting different modules
  −
|-
  −
| 8 || 8th July - 15th July  || Refining
  −
|-
  −
| 9 || 15th July - 22nd July  || Port an activity to Python3
  −
|-
  −
| 10 || 22nd July - 29th July  || Document the process of porting activities for developers
  −
|-
  −
| 11 || 29th July - 5th August || Make robust test suits for activities
  −
|-
  −
| 12 || 5th August - 12th August || Check the accuracy and continue improving
  −
|-
  −
| 13 || 12th August - 19th August  || Clean the code and remove bugs
  −
|-
  −
| 14 || 19th August - 26th August  || Prepare and submit code to google
  −
|}
      +
===== My Timeline: =====
   −
* 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.
+
 
As I have understood the work flow of project, I know what steps to follow and where to reach. Although I am coming here for the first time but I know about summer internships and being a student, I can handle to manage my deadlines. I have a good experience of working in a team moreover I am self motivated, very determined to use the best of my ability and to learn more. Regarding skills set mentioned there, I think I have a fair amount of python knowledge to take this project forward. I have introduced myself to GTK3 which is a must too. Well, I personally feel that I can do it.
+
Pre - 5th May:
 +
 
 +
Explore about dependencies of Sugar core, get into sugar code and talk to the mentors about whole structure to be followed, get more familiar with the project.
 +
 
 +
 
 +
6th May - 20th May:
 +
 
 +
Plan the strategies clearing the outlines and get initial testing done on examples.
 +
 
 +
 
 +
Week 1: 20th May - 27th May
 +
 
 +
Start porting dependencies.
 +
 
 +
 
 +
Week 2: 28th May - 3rd June
 +
 
 +
Continue the work.
 +
 
 +
 
 +
Week 3: 3rd June - 10th June
 +
 
 +
Show a demonstration.
 +
 
 +
 
 +
Week 4: 10th June - 17th June
 +
 
 +
Test and make sure things are stable.
 +
 
 +
 
 +
Week 5: 17th June - 24th June
 +
 
 +
Work with sugar core according to the plans made.
 +
 
 +
 
 +
Week 6: 24th June - 1st July
 +
 
 +
Prepare for Mid Term evaluation.
 +
 
 +
 
 +
Week 7: 1st July - 8th July
 +
 
 +
Testing the ported sugar core.
 +
 
 +
 
 +
Week 8: 8th July - 15th July
 +
 
 +
Make robust test suites.
 +
 
 +
 
 +
Week 9: 15th July - 22nd July
 +
 
 +
Refining and execution of tests.
 +
 
 +
 
 +
Week 10: 22nd July - 29th July
 +
 
 +
Port an activity to Python 3.
 +
 
 +
 
 +
Week 11: 29th July - 5th August
 +
 
 +
Document the process of porting activities for developers.
 +
 
 +
 
 +
Week 12: 5th August - 12th August
 +
 
 +
Check the accuracy and remove bugs.
 +
 
 +
 
 +
Week 13: 12th August - 19th August
 +
 
 +
Clean the code and continue improving.
 +
 
 +
 
 +
Week 14: 19th August - 26th August
 +
 
 +
Prepare and submit code to google.
 +
 
 +
 
 +
===== Why I can complete within timeline: =====
 +
As I have understood the work flow of project, I know what steps to follow and where to reach. Although I am coming here for the first time but I know about summer internships and being a student, I can handle to manage my deadlines. I have a good experience of working in a team. Moreover I am self motivated, very determined to use the best of my ability and to learn more. Regarding skills set mentioned there, I think I have a fair amount of Python knowledge to take this project forward. I have introduced myself to GTK3 which is a must too. Well, I personally feel that I can do it.
    
===You and the community===
 
===You and the community===
24

edits

Navigation menu