From Octave
Jump to navigation Jump to search

A: An introduction[edit]

  • I am a Brazilian student at the State University of Campinas, I've graduated in the beginning of March 2017 and decided to go back to university to take some courses I am interested in and possibly start pursuing a master's degree. My hobbies are playing guitar, chess, tennis, participating in some algorithmic programming competitions and watching video-game speedruns.
  • I speak Portuguese (native), English (fluent), know a bit of Spanish (as it is somewhat similar to Portuguese) and I am studying Russian in university.
  • I've graduated in computer engineering where I mainly had courses about telecommunication theory, control theory, embedded systems and electronics. I also took some non-mandatory classes about algorithms as I've became really fond of algorithms and data structures. I've been an undergraduate teaching assistant for several courses in university, ranging from experimental physics to calculus and competitive programming.
  • When I was an intern I felt how different the projects I've done in university (for courses) were from the one I was asked to work on. Almost every project I've done in university I did on my own from scratch or with a small group from scratch whereas the intern project was a huge system with several people working on it. Also, the program I was enrolled in university (the modality I had chosen) has greater focus on electrical engineering aspects and theoretical classes, so contributing to free software is a great way to do coding in a real world project. Moreover, GSoC is a good way to improve my CV.
    • This is my first time applying to GSoC.
  • I've chosen Octave as the project seems to match my interests and knowledge.

C: Contact[edit]

  • My nick is ivanilos.
  • The timezone I live in is -3.00 GMT and this will not change during the GSoC period.
  • I would rather work during the day (possibly some time between 8.00 and 17.00) but I can be flexible regarding to work timeframe as long as it isn't anytime from 23.00 to 7.00 (with seldom exceptions).

E: Coding experience[edit]

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.
  • Please describe your experience with other programming languages.
  • Please describe your experience with being in a development team. Do you have experience working with open source or free projects?
  • 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 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.

  • My main experience programming in C++ is in competitive programming. I've participated in several competitions and websites such as SPOJ, UVA, hackerrank, hackerearth, codeforces, topcoder, livearchive online judge, ACM-ICPC, Google Code Jam, Facebook Hacker Cup, Yandex Algorithm, IPSC (internet problem solving contest)... I've also used C++ to work on my Bachelor final project which is called "Voce Fiscal" (a public audit of elections in Brazil I've used Octave in the beginning of the coursera course on machine learning (in 2016) but I stopped the course after winter break was over. I have no experience in using Matlab, OpenGL or Qt.
  • I don't have a lot of experience with other programming languages but I've done college projects in Java, I studied a bit of Python on my own and took some classes of introduction to programming and algorithms in Python. I've also won this competition using Python. Yet, in a pair project me and my partner had to integrate Python with PHP to grab some data about musicians from wikipedia in a database course project. I took a non-mandatory course in university where I had to code in Lisp and Prolog and made a project for a game which is based in chess (I talk about the game below). Finally, in a course about logic circuits I had to use VHDL but I didn't have a good experience with it.
  • TODO experience team
  • TODO biggest project
  • TODO commits to Octave

F: Feeling fine[edit]

  • 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[edit]

  • 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[edit]

  • 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[edit]

  • 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[edit]

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