A: An introduction
- Please describe yourself in three sentences, one of them regarding your current studies.
I'm currently studying electrical engineering at the National Institute of Technology, Karnataka, India. I'm an avid programmer with experience in Java,C++(STL), Javascript & Lua. I'm a former National Science Olympiad(NSO) gold medalist.
- Which languages do you speak?
I speak Hindi, English, Arabic, and German
- What's your overall background?
I'm currently studying Electrical Engineering.(Core courses completed: Data Structures & Algo, Signals & Systems, Digital & Analog Electronics , Power Electronics)
- Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?
Ever since I've heard about the Open Source Movement it has been my ambition to contribute to it. By participating in the GSoC I aim to become a prominent member of the Open Source community and gain invaluable skills.
- Why are you choosing Octave?
In my journey as a programmer, C++ and Octave have been my most trusted and useful tools. Last semester I learned Machine Learning on Octave. I also did my Signals & Systems project in Octave. In short, Octave is a big part of my academic life and if I'm able to improve it in any way it'll be beneficial for me.
C: Contact
- Please state the (unique and identical where possible) nick you use on IRC and any other communication channel related to Octave. We want unique nicks. You might want to bold it.
Github:akshit0201 Octave:The Brainiac Freenode:The_brainiac
- 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.
I live in UTC+5:30, this summer I'll be in UTC+4.
- Please state the timeframe (in UTC+0) when you feel most comfortable working during GSoC. Where are your time buffers?
- I code from 8:00(UTC+4) to 11:00 and from 4:00 to 8:00
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've been coding in C++ for the past 4 years. I was introduced to the Standard Template Library last year and have been using that ever since. C++ was also the first language that I learned and I code in it almost every day. Octave was the second language and I've created thousands of m-scripts. I love modular programming and create a separate m-script for every function that I use. I've implemented many Machine Learning algorithms in Octave like Neural Networks (for object recognition), K-Means (for optimizing), SVM's(for classification) and more. My experience in OpenGL is limited to my programming lab assignments in which I had to create basic shapes using OpenGL. I've no experience in Qt
- Please describe your experience with other programming languages.
I learned JavaScript this year and I've built some basic webpages using it. I also know Java and I've implemented Dijkstra's and Prim's algorithms using it. I recently learned Lua to build 2D games in the LOVE2D framework.
- Please describe your experience with being in a development team. Do you have experience working with open source or free projects?
I do a lot a code fixing and develop my own games independently but I've never worked on a development team.
- 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.
I recently developed a flappy bird program. I learned the key concept of "Finite State Machine" on which games run. According to this concept every object in the game is stored in a stack and with changing event push and pops are made to alter the stack. My role in this project was that of programmer and debugger.
- 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.
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 won't necessarily need all of them while working with us.
- IRC and mailing lists
I've used IRC. and I've sent mails using mailing lists.
- Mercurial or other source code management systems
I use GitHub extensively. My repo: https://github.com/akshit0201/Game-Dev.git
- Mediawiki or other wiki software
Wikipedia is the only MediaWiki software I've used.
- make, gcc, gdb or other development tools
I use Atom to develop my games in Lua. Most of the other development work happens mostly in the Octave editor or online.
- 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 :-)
Veteran developers shouldn't dismiss pull requests by budding developers without due consideration. A more welcome environment will definitely make me contribute more.
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.
MacOSX
- Please estimate an average time per day you will be able to access
- an internet connection
24 hrs
- a computer
24 hrs
- a computer with your progressing work on
15 hrs
- Please describe the degree to which you can install new software on computers you have access to.
As long as the new software doesn't cost more than 50 dollars I wouldn't mind installing it.
S: Self-assessment
- Please describe how useful criticism looks from your point of view as committing student.
- How autonomous are you when developing:
I'm very autonomous while developing. I only contact the community when I've tried everything I could.
- Do you like to discuss changes intensively and not start coding until you know what you want to do?
No, I start first and step by step piece together a solution. I believe by taking the first step the rest of the journey becomes more clear.
- 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?
Yes, I don't.
Y: Your task
- Did you select a task from our list of proposals and ideas?
Yes
- 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.
I chose PolarAxes and Plotting Improvements. I want to focus on developing PolarAxes as an object first and then I'll be focusing on adding aesthetic features like Thetacolor, RLim, and RDir etc.
- Please provide a roughly 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.
2nd week of May -Start Coding,1st week of April-Object of 2D Polar Plot is created,3rd week of April-Debugging complete,4th Week of April-Noncoding time, 2nd week of June-aesthetic features like plot colors resize, etc are added,1st week of July-M files are created to access the PolarAxes object,4th week of July-Debugging complete, 2nd week of August-Code submission.