From Octave
Jump to navigation Jump to search

A: An introduction

  • Please describe yourself in three sentences, one of them regarding your current studies.

My name is Xie Rui. I am an undergraduate in Tsinghua University, Beijing, China. I am hard-working and have a strong desire to finish my work completely.

    • Which languages do you speak?

I speak Chinese (native), Engilsh and a little German.

    • What's your overall background?

Electrical Engineering and Automation. Mathematics and Applied Mathematics.

  • Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?

Because it is a good opportunity to gain a experience about a real project, improve my skills, and learn to work with other developers. I think contributing to an open source software is a cool thing to do. After all, I always enjoy coding.

  • Why are you choosing Octave?

First, Octave is a useful tool for students like me. I will be very happy if I can do something for it and make it better. Second, I like mathematics and I am skilled in this. I have the ability to handle the project which requires mathematical knowledge. Third, I have been using matlab for two years. I am good at m-file coding.

C: Contact

  • Please state the (unique and identical where possible) nick you use on IRC and any other communication channel related to Octave.

My Nickname on the IRC, wiki is AMR_KELEG and amr_keleg on the Savannah bug tracker. Nick on IRC: calvocuno Nick on wiki and Savannah bug tracker: xierui

  • Which time zone do you live in? Will that change over GSoC duration?

My time zone is UTC+8 and it will not change during GSoC.

  • Please state the timeframe (in UTC+0) when you feel most comfortable working during GSoC. Where are your time buffers?

I usually code around 1.00 to 4.00, and 10.00 to 13.00, but it is flexible.

E: Coding experience

This part is one of the more important ones in your application. You are allowed to be as verbose as you want, as long as you stay on topic ;-)

  • Please describe your experience with C++, Octave or Matlab m-scripts, OpenGL and Qt.

I finished a course focusing on C++. I have been using Matlab for two years, and write m-scripts to do my course projects, including signal processing, numerical analysis, mathematical planning and some simulations of electrical engineering. I started to use Octave since January 2017.

  • Please describe your experience with other programming languages.

I can code with Java, Python and VHDL.

  • 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.

When I was taking the course Signals and Systems, I finished a project based together with two other students. Our project is about human face recognition and image restoration and it is implemented on Matlab. My work is image restoration algorithm, code integration and the GUI part. It took us about one month to finish it. My coding skill was improved, and I learned how to work as team to accomplish a big project. We were very happy when we finally did it, and we are good friends since then.

  • Please state the commits and patches you already contributed to Octave. This question (one of the most important parts by the way) is the only part of your application our wiki admins will edit for you even after the application deadline. Code sometimes speaks louder than many words do.

Patch #9282

F: Feeling fine

  • Please describe (in short) your experience with the following tools: We only use this question to determine where you need guidance, not for rating! We by no means expect you to be familiar with all of these and you'll won't necessarily need them while working with us.
    • IRC and mailing lists
    • Mercurial or other source code management systems
    • Mediawiki or other wiki software
    • make, gcc, gdb or other development tools
  • What will make you actively stay in our community after this GSoC is over? You can also tell us after applications close and we'll happily try to fulfill :-)

O: Only out of interest

  • Did you ever hear about Octave before?
    • If so, when and where? How far have you been involved already?
    • If not, where would you expect or advise us to do advertising?
  • What was the first question concerning Octave you could not find an answer to rather quickly? Of course more than one question can be stated. We try to improve based on this each year! Includes learning how to use it, code, website, GSoC application, …

P: Prerequisites

  • 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.
  • Please estimate an average time per day you will be able to access
    • an internet connection
    • a computer
    • a computer with your progressing work on
  • Please describe the degree to which you can install new software on computers you have access to.

S: Self-assessment

  • Please describe how useful criticism looks from your point of view as committing student.
  • How autonomous are you when developing:
    • 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?

Y: Your task

  • 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. Please also wiki-link the page for your elaborated proposal here.
    • If you apply for a task you have added yourself instead, please describe this task, its scope and people you already talked to concerning it. What field of tasks did you miss on the list?
  • 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"). If possible, include two or three milestones you expect.