Template:Student application template public: Difference between revisions

no edit summary
m (Undo revision 10817 by Erigualter (talk))
No edit summary
Line 3: Line 3:


== A: An introduction ==
== A: An introduction ==
My name is Erivelton Gualter and I am a first year PhD student at
* Please describe yourself in three sentences, one of them regarding your current studies.  
[https://www.csuohio.edu/ Cleveland State University], USA. My overall background is related to robotics applied to biomechanics. I am currently developing a robotics transfemoral prosthesis and I built a robotic wheelchair when I majored in Automation and Control Engineering at FEI University in Sao Paulo, Brazil. I am fluent in Portuguese, English and Intermediate Spanish.  
** Which languages do you speak?
 
** What's your overall background? ''The general field you work in or are studying, e.g. computer science, physics, artificial intelligence, control theory...''
It is my first time applying to the Google Summer of Code. However, I have been in touch with a couple organization: Octave and Sympy. My primary goal to participate in the gsoc is to build a long term relationship with the open source community. I want to take it serious and get involved. I have been using a lot of open source tools, and now I fell it is time to contribute for it.  
* Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?
 
** Please also describe your previous experience with the GSoC, if any. ''Includes any community-bonding, mentor experience or application, not necessarily accepted. We use this subquestion to identify which students are unfamiliar with how the program goes, providing further support. It has no negative impact on your rating!''
I choose Octave because I have used MATLAB during my entire undergraduate program and I still use it for my PhD. However, now It is time to switch gears, so I decided to use Octave due the similarity to m scripting. Unfortunately, Octave still lacking some  crucial functions which prevent some group of people to also switch gears. Therefore, I want to be part of maintainers group and I want to be able to use Octave for all my projects.
* Why are you choosing Octave?


== C: Contact ==
== C: Contact ==
* My time zone is UTC-4.  
* Please state the (unique and identical where possible) nick you use on IRC and any other communication channel related to Octave. ''We really want unique nicks. You might want to bold it.''
* I usually sleep at 2am to 8pm. So besides that I am flexible to work any time.  
* Which time zone do you live in? Will that change over GSoC duration? ''Perhaps DST adjustment or a relocation. Note that both UTC and GMT are not aware of daylight saving time! Please state UTC+x or -x.''
* Here is my nickname:
* Please state the timeframe (in UTC+0) when you feel most comfortable working during GSoC. Where are your time buffers?
** wiki, IRC and Savannah: '''erigualter'''
* ''Example: I usually code around 9.00 to 18.00 and could also try to start earlier (~7.00) for few days ;-)''
** github: [https://github.com/EriveltonGualter EriveltonGualter]
* Personal Webpage: [https://eriveltongualter.github.io/ https://eriveltongualter.github.io/]
 
However, I was using '''dev101''' in the IRC chat, which I will not longer use anymore.


== E: Coding experience ==
== E: Coding experience ==
'''Short answer of Programming Languages (in approximate order of proficiency):'''
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 ;-)
* M-file scripting;
* Please describe your experience with C++, Octave or Matlab m-scripts, OpenGL and Qt.
* C/C++;
* Please describe your experience with other programming languages.
* Python;
* Please describe your experience with being in a development team. ''Do you have experience working with open source or free projects?''
* HTML,  CSS,  Javascript,  Pelican (Web  development);
* 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.
* Java.
* 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.''
 
'''Some illustration about what I have done:'''
 
<gallery heights=400px mode="slideshow">
File:GUI.png|Simulator of gait walking with amputee subjects using prosthesis built.
File:pendulum.png|Inverted Pendulum Interface to simulate different parameters.
File:wheelchair.jpg|Power-Assisted Wheelchair. Embedded Controller in C.
File:robofei.png|Strategy and Controller of robots to play soccer in C++.
</gallery>
 
'''Deep and detailed answer about programming language experience:'''
 
* M-file scripting Octave/Matlab
** I have been used Matlab/Octave in several classes at my undergraduate, such as: Numerical Calculus, Classical Control Systems I and II, Modern Control, Digital Signal Processing, Artificial Intelligence, and Computational Intelligence Applied to Control.  
** Also, in Online Courses at Coursera plataform: Aerial Robotics, Computational Motion Planning and Mobility: [https://eriveltongualter.github.io/mooc.html code]
** Here is a link with the overall projects developed in m-scriptiong file:[https://eriveltongualter.github.io/Matlab.html code]
** I also have created some GUI (graphical user interface) in matlab:
*** Simulation of Inverted pendulum mounted to a motorized cart, where the user can select the parameters of the system and the controller. [https://github.com/EriveltonGualter/Inverted-Pendulum code]
*** Simulation of Variable Stiffness Actuator for a Prosthesis: [https://github.com/EriveltonGualter/VSA-Simulation code]
 
* C/C++
** I used C and C++ in several classes: Introduction to Computer Programming, Laboratory Automation Engineering, Embedded Systems, Advanced Programming Language I and II, Data Structure.
**  I joined to the Artificial Intelligence and Robotics laboratory to develop robots with the ability to play soccer. I developed part of the strategy to pass system and intercept algorithms.
** I build an Power-Assisted Wheelchair controlled by EMG signals: \url{https://www.youtube.com/watch?v=rjgii2i_xP4} , here is the link for the full project: \url{https://eriveltongualter.github.io/wheelchair.html}
 
* Python
** I built an Airhockey table, which I developed the repository mechanism, upgraded airflow system, and display interface. For this task I used a Raspberry Pi as an interface. [https://eriveltongualter.github.io/airtable.html code]
** I have done some web scraping for fun.
 
* HTML,  CSS,  Javascript,  Pelican (Web  development):
** I have developed some webpages, such as my personal webpage and others:
*** [https://eriveltongualter.github.io/ https://eriveltongualter.github.io/]
*** [https://fei-nta.github.io/webpage/ https://fei-nta.github.io/webpage/]
*** [https://vickykras.github.io/ https://vickykras.github.io/]


== F: Feeling fine ==
== F: Feeling fine ==
* '''“IRC and mailing list”''': I have been hanging out in the IRC and following the mailing list without any problems;
* 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.''
* '''“Mercurial”''': I have been using git a quite time and I used hg just in order to clone and update the Octave project. I might ask about hg later on or I am sure I can find the majority answers in hg documentation.
** IRC and mailing lists
* '''“mediawiki”''': I fell fine editing the wiki.
** Mercurial or other source code management systems
* '''“development tools”''': Basic understand to build a GNU system, using configure-make-make install. Although I have built several programs when I was a windowns user in Microsoft Visual Studio.
** Mediawiki or other wiki software
** make, gcc, gdb or other development tools


After the GsoC, I feel confident in stay in the community. For sure, I will be using Octave in my phd research at least for more three years, since I just started. However, my main goal is to became a maintainer of the Octave as hobby independent of my research and job.
* 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 ==
== O: Only out of interest ==
I first heard about Octave in third year of my undergraduate program. I had a problem with my Matlab license and I needed to conclude a homework. Therefore, I found Octave by myself surfing on Google. Actually, in that time I did not feel the Octave appearance really welcoming (just noting I was a window's user in that time). Then in the last year of college I did a dual boot Windows and Ubuntu 14.04, and I installed Octave in the Ubuntu side. However, I have been using both Octave and Matlab since I share code with my adviser, I still use Matlab a lot. (I am still trying to convince him to switch with me).
* 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, …''


In back the time I used Octave for the first time in window's, I faced some installation issues with took a while to figure out. I am not using windows anymore, so I assume it is fine nowadays.
== P: Prerequisites ==
* Please state the operating system you work with.
* 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


== P: Prerequisites ==
* Please describe the degree to which you can install new software on computers you have access to.
* I have a personal laptop with Ubuntu 16.04 and Windows 10 (but I only use windows for specific software of my research). Also, I have full access for both system.
* I basically spend my whole day in my laptop (24h).


== S: Self-assessment ==
== S: Self-assessment ==
I belief that construct critics is essential for anyone looking to improve their abilities in certain tasks.  
* Please describe how useful criticism looks from your point of view as committing student.
 
* How autonomous are you when developing:
I am autonomous in my tasks and I consider myself very pro-activity individual. I prefer to discuss the goals desire prior to coding. After established the goals, even if we do not discussed what is the right path is to reach the goal I will be proactive and find a solution to reach this goal. Obviously with a feedback and construct criticism, the work will be concluded much faster.
** 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 ==
== Y: Your task ==
29

edits