67
edits
(Blanked the page) |
No edit summary |
||
Line 1: | Line 1: | ||
== A: An introduction == | |||
* My name is '''Georgios Ouzounis'''. I am a fourth year undergraduate student in the School of Electrical and Computer Engineering in Aristotle's | |||
University of Thessaloniki, Greece [http://http://ee.auth.gr/en/ link] (engineering bachelor include 5 years of studies in my country). I love computer programming, mathematics and engineering and I hope to be able to stay involved with them through my whole life. My native language is Greek and I can | |||
also use English very well. As the title of my School indicates, my current field of study is Electrical and Computer Engineering involving subjects | |||
related to electrical and electronic circuits and also subjects related to computers and engineering such as control theory, analog and digital signal processing, computer networks etc... | |||
* Applying for participation in the Google Summer of Code(GSoC) is my first step towards real world software development. Until now I have been programming | |||
mainly for university projects so what I hope to gain from GSoC is experience and knowledge on how to create software to be used by others. I have | |||
never had any similar to GSoC experience and it is the first time I get in touch with a programming community. | |||
* The past two years I had to deal with many university projects that required the use of software like Matlab or Octave. Using both of them I came | |||
to realize the power of such tools. That is the main reason why I chose Octave. I have actually wanted to contribute to Octave long before finding GSoC but never found the nerve to try it until now. | |||
== C: Contact == | |||
* My nick in IRC, wiki.octave.org and the patch tracker is '''gouzouni''' ('''Gouzouni''' on the wiki). The time zone in my country is UTC+2 | |||
(Eastern European Time Zone) and this is not going to change during the whole GSoC period. I usually code around 17.00 to 1.00 but time is not | |||
really a matter. Mornings are good as well! | |||
* Other contact informations are my e-mail ouzounis_georgios@hotmail.com and my Facebook account "Georgios Ouzounis". You can also find me in | |||
Skype under the name (guess what :P ) "Georgios Ouzounis". | |||
== E: Coding experience == | |||
* I have been writing code in C and C++ for the last 4 years both for university projects and personal use. I have a very good understanding of these languages. I am well aware of the object oriented programming concept and I can use debuggers such as GDB very well. As far as Octave m-scripts are | |||
concerned, I have been writing such code for the past 2 years mostly for university projects. I have written scripts for a wide spectrum of subjects | |||
such as optimization, image and signal processing, system recognition, control systems, machine learning and mathematics. I have very good knowledge | |||
of mathematics which helps in many ways such as writing vectorized code which is much faster than using loops. | |||
* Other programming languages that I use frequently and am comfortable with are Java and Assembly. I have also used Python for some time. I am comfortable | |||
with using PThreads, Cuda and MPI and I am comfortable with parallel computing in languages such as Java, C++ and Matlab/Octave. | |||
* I have no experience working with open source or free projects. I have good experience with being in a development team but only for small projects, | |||
nothing as large as Octave. | |||
* The biggest project I have written code for is an Android application, a calculator, I developed last summer. It is about 2500-3000 lines of code. What | |||
I have mainly learned from that is if the small parts are well developed and documented then the big ones can be done quite easily. On the other hand, | |||
not being cautious in the first steps is going to be a big trouble on the later stages of a project. I was the only one working on that project so I had | |||
no specific role. | |||
* Until now I have committed patch #8379 which includes the uencode and udecode functions of the signal package. | |||
== F: Feeling fine == | |||
* I am new to IRC but I have been using mailing lists for a while. I am also new to Mercurial and generally source code management systems. | |||
I am comfortable with make, gcc and gdb but I wouldn't say I am a master of the last one. | |||
* I intent to stay in Octave's community after GSoC is over no matter if I get picked to participate or not. I like programming and Octave's nature | |||
(mathematics, digital and analog signals etc...) is what I am comfortable working on. I would love to continue contributing. | |||
== O: Only out of interest == | |||
* My access to Matlab was(and still is) limited only inside the university campus so if I wanted to work my projects at home and not stay until late in the campus I had to use other software. That is how I found out about Octave two years ago. I have been using it for the last two years and another | |||
reason why I want to contribute to it, is to help make it bigger. What gave me a hard time was the lack of a fullest symbolic package, that is why I want | |||
to work on it. | |||
* A thing that I had a little trouble finding an answer to how to contribute to Octave's development but I guess that was due to the fact that I had | |||
no idea what a source code management system is. | |||
== P: Prerequisites == | |||
* For the past year I have been using Ubuntu 13.10(13.04 before) and before that I used windows 8. I have both these operating systems installed | |||
on my laptop and I have root access to both of them. | |||
* I have a 24/7 access on an Internet connection, a computer and a computer with my progressing work on. | |||
* I am free to install any new software on my laptop. | |||
== S: Self-assessment == | |||
* After realizing that I was not born a good programmer (that was a long time ago :P ) I begun to appreciate any criticism. It's not that I like to be | |||
told that I am wrong, but if I am, I try my best to correct my mistakes. | |||
* When I get a project on my hands I usually have a good deal of questions at first. Mostly clarification questions. After a while and when I get to | |||
understand what is actually needed I can say I am pretty autonomous both in working on the project and solving the new questions coming up. What I | |||
like though, is a frequent feedback on whether I am on the write course or not. I hate what some of my university professors do, giving me a project | |||
and meeting me again a moth after to check on what level I am. I like a frequent, say every 7 or 10 days, communication with other members on the project | |||
or the mentor in order to check if everything is ok. It's the more frequent the contact is the better the outcome will be. | |||
* My answer is yes. I don't expect to have everything figured out from the beginning but I like to have a decent schedule before starting writing code. | |||
* Yes I do. I like to try many different ways of doing something in order to find the best. Since how will it turn out is not clear at the beginning, | |||
throwing work away, even if it is a week's work, is a risk I am willing to take. | |||
== Y: Your task == | |||
* I have selected two tasks from the proposals list. The first is the development of the symbolic package [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Rewrite_symbolic_package link ] and the second one is the improvement of the MPI package [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Improve_MPI_package link ]. I would really like to work on any of these tasks but the truth is that if I had to choose | |||
I would go with the symbolic package. | |||
* I haven't come with an actual time line yet and here is where I would appreciate some comments. How realistic is it to expect to have the symbolic | |||
package half or more done at the end of the GSoC? What about fully completing it? (By fully I mean having the main trunk done, there will always | |||
be something to add). I will add a time line for each one of the above projects after a while. |
edits