Editing User:LYH
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 13: | Line 13: | ||
* '''Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?''' | * '''Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?''' | ||
:I am a technical enthusiast and has | :I am a technical enthusiast and has used serveral opern source project in my research. So I want to contribute to open source organization via participating GSoC. In addition cooperating with open source group, I hope to gain experience with Octave IR, JITC internal and JIT optimizations (trace/method-based compilation … etc). | ||
:* '''Please also describe your previous experience with the GSoC.''' | :* '''Please also describe your previous experience with the GSoC.''' | ||
::I applied GSoC last year so I am familiar with how this program goes. | ::I have applied GSoC last year so I am familiar with how this program goes. | ||
* '''Why are you choosing Octave?''' | * '''Why are you choosing Octave?''' | ||
:I noticed that Jordi Gutiérrez Hermoso post an idea related to JIT compiling on GSoC discuss group. Since I have some experience using LLVM JIT to improve runtime system performance. I want to improve Octave JITC and further make it my research thesis. | :I have noticed that Jordi Gutiérrez Hermoso post an idea related to JIT compiling on GSoC discuss group. Since I have some experience using LLVM JIT to improve runtime system performance. I want to improve Octave JITC and further make it my research thesis. | ||
== C: Contact == | == C: Contact == | ||
Line 33: | Line 33: | ||
== E: Coding experience == | == E: Coding experience == | ||
* '''Please describe your experience with C++, Octave or Matlab m-scripts, OpenGL and Qt.''' | * '''Please describe your experience with C++, Octave or Matlab m-scripts, OpenGL and Qt.''' | ||
:I | :I program in C/C++ a few years, I developed an API for communication wifi with a robot (KheperaIII) in C++, made major corrections and contributions in C++ for Scilab, including some work in OpenGL. At university I develop small projects interface with Qt and I used Octave to implement dozens of numerical methods algorithms, deterministic and stochastic, like Firefly, Hook and Jeeves, Rosenbrock, Simplex, Steepest Descent, Davidon-Fletcher-Powell, Luus-Jaakola, Simulated Anneling and others. To build improvements for Scilab, I spent some time researching and analyzing the graphical features of Matlab. In Matlab I also have used some toolboxes for to study neural networks. | ||
* '''Please describe your experience with other programming languages.''' | * '''Please describe your experience with other programming languages.''' | ||
:I | :I have a lot of experience in Java, a large part of my contribution to Scilab was made in the language, in addition, I also developed some applications for small and medium size. I also have extensive experience in web development, especially with PHP, HTML, CSS and SQL. I did a lot of modifications on the shareware platform Vbulletin (PHP + MySQL). | ||
* '''Please describe your experience with being in a development team. | * '''Please describe your experience with being in a development team.''' | ||
:I have | :I developed some jobs to automation robots, applying some genetic algorithms. These works have been developed in a team of 6 developers in laboratory automation at my university, we met in the lab three times a week and we communicated by IRC, managing code with GIT. Most parts of the development in Scilab also required group work, for this I used mailing lists and IRC. | ||
* '''Please describe the biggest project you have written code for and what you learned by doing so. Also describe your role in that project over time.''' | * '''Please describe the biggest project you have written code for and what you learned by doing so. Also describe your role in that project over time.''' | ||
:My biggest project | :My biggest project was conducted in Scilab. It was a fantastic experience, I learned a lot and managed to develop tools that will be very useful for the Scilab community. Some features of this work are already described in previous questions. | ||
== F: Feeling fine == | == F: Feeling fine == | ||
* '''Please describe (in short) your experience with the following tools:''' | * '''Please describe (in short) your experience with the following tools:''' | ||
:* '''IRC and mailing lists''' | :* '''IRC and mailing lists''' | ||
::I | ::I use IRC and mailing lists a few years. They are excellent to keep up with development groups. | ||
:* '''Mercurial or other source code management systems''' | :* '''Mercurial or other source code management systems''' | ||
::I | ::I have a lot of experience with GIT and also I've used SVN in some projects. I don't have a lot of experience in Mercurial, but I'm sure it will not be a problem =D. | ||
:* '''Mediawiki or other wiki software''' | :* '''Mediawiki or other wiki software''' | ||
:: | ::I am familiar with Mediawiki, as I have written some tutorials on some sites with this software. | ||
:* '''make, gcc, gdb or other development tools''' | :* '''make, gcc, gdb or other development tools''' | ||
::I | ::I am comfortable with using these tools. | ||
* '''What will make you actively stay in our community after this GSoC is over?''' | * '''What will make you actively stay in our community after this GSoC is over?''' | ||
: | :As mentioned in previous questions, the integration with the community is one of my goals. So if I make friends, helping people, and develop important things along the GSoC, I'll be even more excited to continue contributing. | ||
== O: Only out of interest == | == O: Only out of interest == | ||
* '''Did you ever hear about Octave before?''' | * '''Did you ever hear about Octave before?''' | ||
** '''If so, when and where? How far have you been involved already?''' | ** '''If so, when and where? How far have you been involved already?''' | ||
::I | ::Yes, I have known the Octave four years ago, at my university, in Brazil. | ||
== P: Prerequisites == | == P: Prerequisites == | ||
* '''Please state the operating system you work with.''' | * '''Please state the operating system you work with.''' | ||
** '''If you have access to more than one, please state them and the conditions under which you are granted this access.''' | ** '''If you have access to more than one, please state them and the conditions under which you are granted this access.''' | ||
:: | ::I have a notebook with Ubuntu and Windows 7. Eventually can I use a MacBook of a lab at my university, to perform some tests (if necessary). | ||
* '''Please estimate an average time per day you will be able to ''(if separated)'' access''' | * '''Please estimate an average time per day you will be able to ''(if separated)'' access''' | ||
** '''an internet connection''' | ** '''an internet connection''' | ||
** '''a computer''' | ** '''a computer''' | ||
** '''a computer with your progressing work on''' | ** '''a computer with your progressing work on''' | ||
:: | ::I am all the time with my laptop, I just disconnect the internet when I sleep... | ||
::I understand the importance of dedication to the project, so I can guarantee that I will be absolutely free for GSoC and that I can accomplish much more than 40 hours per week. | |||
* '''Please describe the degree up to which you can install new software on computers you have access to.''' | * '''Please describe the degree up to which you can install new software on computers you have access to.''' | ||
:I | :I can install any software on the computers mentioned! | ||
== S: Self-assessment == | == S: Self-assessment == | ||
* '''Please describe how useful criticism looks from your point of view as committing student.''' | * '''Please describe how useful criticism looks from your point of view as committing student.''' | ||
: | :Criticisms are essential in group work, because people are able to share knowledge, and can bring improvements to the development process. | ||
* '''How autonomous are you when developing?''' | * '''How autonomous are you when developing?''' | ||
: | :I always do a search on the internet or in books in the great library at my university. If I'm not successful, I seek to talk to someone in the community, by email or IRC. | ||
:* '''Do you like to discuss changes intensively and not start coding until you know what you want to do?''' | :* '''Do you like to discuss changes intensively and not start coding until you know what you want to do?''' | ||
:* '''Do you like to code a proof of concept to 'see how it turns out', modifying that and taking the risk of having work thrown away if it doesn't match what the project or original proponent had in mind?''' | :* '''Do you like to code a proof of concept to 'see how it turns out', modifying that and taking the risk of having work thrown away if it doesn't match what the project or original proponent had in mind?''' | ||
::I | |||
::I think it largely depends on the purpose of development, some jobs require more time for research and planning. However, I believe that in general the best way is to use a few days to talk intensely about the tasks and perform some working sketches, after that, I think it is interesting to encode some examples and keep adjusting them over time, I think it is more attractive for work as the GSOC! | |||
== Y: Your task == | == Y: Your task == | ||
* '''Did you select a task from our list of proposals and ideas?''' | * '''Did you select a task from our list of proposals and ideas?''' | ||
:* '''If yes, what task did you choose? Please describe what part of it you especially want to focus on if you can already provide this information.''' | :* '''If yes, what task did you choose? Please describe what part of it you especially want to focus on if you can already provide this information.''' | ||
::According to what I had discussed in previous questions, I am really very interested in developing new GUI tools for working with graphics and assist in finalizing the GUI Octave. | |||
:: | |||
:: | ::To develop a graphics editor (interactive), we need the objects to be recognized with just one click. Therefore, I propose to work in this first part, so that the tools are more powerful. Unless these tasks are performed by one more student, in this case, we could divide them to have more time in the development of new tools. | ||
:: | ::#Finish the Octave GUI [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Finish_the_Octave_GUI] | ||
::#Implement a Qt widget for manipulating plots [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Implement_a_Qt_widget_for_manipulating_plots] | |||
::#Lighting [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Lighting] | |||
::#Object selection in OpenGL renderer [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Object_selection_in_OpenGL_renderer] | |||
*'''Please provide a rough estimated timeline for your work on the task. This should include the GSoC midterms and personal commitments like exams or vacation ("non-coding time"). Optionally include two or three milestones you expect.''' | *'''Please provide a rough estimated timeline for your work on the task. This should include the GSoC midterms and personal commitments like exams or vacation ("non-coding time"). Optionally include two or three milestones you expect.''' | ||
: | :I have a lot of time available, so I can easily work for at least 40 hours per week and eventually on weekends, always aiming at the completion of my tasks. I take responsibility and commitment never to abandon the project. In this kind of project, it is hard to predict in detail the planning because many things mutate over time. | ||
:*[[ | :*[[May 27 - June 17:]] | ||
:: | ::At this time I want to talk to my mentor about the project to try to argue about new proposals and ideas that try to absorb and improve other existing projects, thinking about my strategies to work faster. In addition to performing more tests on some functions. | ||
::I'm looking to contribute in some way in bug list and other requests from the Octave team and I can do it intensely during this period. | |||
:*[[ | :*[[June 18 - July 02:]] | ||
:: | ::Seeing things that have already been made, make small changes and fixes. Working in visual selection of individual points and curves. | ||
:*[[ | :*[[July 03 - July 17: ]] | ||
:: | ::Working in the individual surfaces. | ||
:*[[ | :*[[July 18 - August 01:]] | ||
:: | ::An insight into a graphics editor for manipulating plots. | ||
:*[[ | :*[[August 02:]] | ||
:: | ::Mid-term evaluations deadline | ||
:*[[ | :*[[August 03 - August 31:]] | ||
:: | ::Development of tools for manipulating plots. | ||
:*[[ | :*[[September 01 - September 15:]] | ||
:: | ::Improving the tools that are in progress and integrates them with the tools that I developed. | ||
:*[[ | :*[[September 16 - September 23:]] | ||
:: | ::“Pencils down” date. Leave everything well documented for final evaluation. (review the work, run tests and correct any bug) | ||
:*[[ | :*[[September 24 - September 27:]] | ||
:: | ::Preparing sample codes to submit to Google, discussing them with my mentor and Scilab community. | ||
[[Category:2013 | [[Category:Summer of Code 2013 Applicants]] | ||