Changes

no edit summary
Line 54: Line 54:     
My project aims at porting sugar to Python3 . It will also include writing a robust test suite for sugar and a Python3 porting guide for sugar activities.  
 
My project aims at porting sugar to Python3 . It will also include writing a robust test suite for sugar and a Python3 porting guide for sugar activities.  
Python3 is the future of python and every software will eventually be ported to Python3. The main difference that makes Python3 better than Python2.x is that the support for unicode is greatly improved in Python3 . This will also be useful for sugar as sugar has users in more than 100 languages and it's easy to translate strings from unicode to other languages. Also, gtk3+ , on which sugar is built has a better unicode support too, so along with gtk3+ and Python3 , sugar will get more efficient and developer friendly.
+
Python3 is the future of python and every software will eventually be ported to Python3. The main difference that makes Python3 better than Python2.x is that the support for unicode is greatly improved in Python3 . This will also be useful for sugar as sugar has users in more than 100 languages and it's easy to translate strings from unicode to other languages. Also, gtk3+ , on which sugar is built has a better unicode support too, so along with gtk3+ and Python3 , sugar will get more efficient and developer friendly.<br />
More differences between Python2 and 3 can be found here: http://docs.python.org/3/whatsnew/3.0.html
+
More differences between Python2 and 3 can be found here: http://docs.python.org/3/whatsnew/3.0.html <br />
In this project, I would first start by porting sugar-toolkit-gtk3 to Python 3 compatible code. It won't have to be backwards compatible because the activities are run using dbus , so the activiteis written in Python2 will still work.  After that, I will port the sugar-shell to Python 3 compatible code. Some tools that can be used to port are 2to3 and autopep8 (https://pypi.python.org/pypi/autopep8/)  
+
In this project, I would first start by porting sugar-toolkit-gtk3 to Python 3 compatible code. It won't have to be backwards compatible because the activities are run using dbus , so the activities written in Python2 will still work.  After that, I will port the sugar-shell to Python 3 compatible code. Some tools that can be used to port are 2to3 and autopep8(https://pypi.python.org/pypi/autopep8/).
The process that i will follow will be:
+
The process that I will follow will be:
 
# Check if all the dependencies are compatible with Python3, if not first port them to Python3.
 
# Check if all the dependencies are compatible with Python3, if not first port them to Python3.
 
# Use AutoPEP8 to make the code comply with PEP8 style guide which will also help with the porting.
 
# Use AutoPEP8 to make the code comply with PEP8 style guide which will also help with the porting.
 
# Use 2to3 to make the code Python 3 compatible.
 
# Use 2to3 to make the code Python 3 compatible.
# Go through the remaining code manually and sort out any errors or discrepancies.
+
# Go through the remaining code manually and sort out any errors or discrepancies.<br />
 +
 
 
A more thorough porting guide for sugar activities will be written.
 
A more thorough porting guide for sugar activities will be written.
Further changes in porting strategy, if any , will be discussed during the community bonding period.
+
Further changes in porting strategy, if any , will be discussed during or before the community bonding period.
 
<br />
 
<br />
   Line 107: Line 108:     
* I implemented a paddle ball game using graphics library in C++ when I was in 11th class:<br />
 
* I implemented a paddle ball game using graphics library in C++ when I was in 11th class:<br />
https://github.com/curiousguy13/paddle-ball
+
Link: https://github.com/curiousguy13/paddle-ball
    
* A project on tourism using C++ when I was in 12th class:<br />
 
* A project on tourism using C++ when I was in 12th class:<br />
https://github.com/curiousguy13/travel
+
Link: https://github.com/curiousguy13/travel
    
* I am good with algorithms and data structures and I like to do algorithmic puzzles on projecteuler which can be found here:<br />
 
* I am good with algorithms and data structures and I like to do algorithmic puzzles on projecteuler which can be found here:<br />
https://github.com/curiousguy13/project_euler
+
Link: https://github.com/curiousguy13/project_euler
    
* I successfully completed CS50x (on edx.org) last year in which I made a finance website using HTML/CSS ,PHP, javascript and MySQL.I cannot share it's code though due to the Honour code.<br />
 
* I successfully completed CS50x (on edx.org) last year in which I made a finance website using HTML/CSS ,PHP, javascript and MySQL.I cannot share it's code though due to the Honour code.<br />
https://s3.amazonaws.com/verify.edx.org/downloads/1c2174e5034f446fb0f3e0439dfb8c1a/Certificate.pdf
+
Link: https://s3.amazonaws.com/verify.edx.org/downloads/1c2174e5034f446fb0f3e0439dfb8c1a/Certificate.pdf
    
* I also made a BMI calculator android app in Java as a final project of CS50x which can be found here:<br />
 
* I also made a BMI calculator android app in Java as a final project of CS50x which can be found here:<br />
https://github.com/curiousguy13/calc
+
Link: https://github.com/curiousguy13/calc
    
* I also successfully completed 6.001x of MIT (from edx.org) last year with 96% and created a web parser to monitor newsfeed over the internet as one of the  problem sets.I cannot share it's code though due to the Honor Code that was promised by me.<br />
 
* I also successfully completed 6.001x of MIT (from edx.org) last year with 96% and created a web parser to monitor newsfeed over the internet as one of the  problem sets.I cannot share it's code though due to the Honor Code that was promised by me.<br />
https://s3.amazonaws.com/verify.edx.org/downloads/eba70bcc05ac483da493a0dde7ef9bcf/Certificate.pdf
+
Link: https://s3.amazonaws.com/verify.edx.org/downloads/eba70bcc05ac483da493a0dde7ef9bcf/Certificate.pdf
 +
 
 +
* I am also currently involved with the mozmill(mozilla) team to port mozmill to Python3 and thus have experience using 2to3 and autopep8.<br />
 +
 
 +
* I have also ported all the sugar and sugar-toolkit-gtk3 tests to Python3. <br />
   −
* I am also currently involved with the mozmill(mozilla) team to port mozmill to Python3.<br />
+
Link : https://github.com/curiousguy13/sugar-python3-tests
    
I am really enthusiastic about being a part of such a great project and am ready to devote 50+ hours per week this summer as this will be the only big project that I will be involved with.
 
I am really enthusiastic about being a part of such a great project and am ready to devote 50+ hours per week this summer as this will be the only big project that I will be involved with.
28

edits