GSOC 2016 under GNU Octave: Public application
A: An introduction
- Please describe yourself in three sentences, one of them regarding your current studies.
Hello, my name is Aditya Manglik. I am a hard working and dedicated person who likes to complete his work with utmost perfection. I am currently a college student in India.
- What's your overall background? The general field you work in or are studying, e.g. computer science, physics, artificial intelligence, control theory...
I am an undergraduate at BITS Pilani(India), currently majoring in Electrical and Electronics Engineering with Computer Science concentration. I am interested in mathematics and enjoy working on projects related to AI and Robotics. I am fluent in English, Hindi and Punjabi. Language preferred for professional work: English.
- Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?
I wish to contribute to the open source community to the best of my efforts and boost my skills as a developer during this period. It's about giving back to the community which has contributed so much to changing our lives. Linux, FFMPEG, GNU Octave etc are softwares which are used by us on almost daily basis without us even realizing their importance to our lives and the computer science field. Open source gives people the freedom to express themselves without any 'Digital Handcuffs' and learn a lot in the process as well. I wish and hope that Google Summer Of Code will give me the chance to express these ideas.
- 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 have not participated in GSOC prior to this. I am familiar with the program and its time line.
- Why are you choosing Octave?
I chose Octave because it is an amazing project. I have used MATLAB and Octave at my college and school for lots of projects and realized that this knowledge and computation tool must be available to all for free. Science and Technology education must not be bound by licensing fees. It is very important for us to realize the importance of, and promote Free and Open Source software.
- 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.
IRC nick: carpediem
- 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 India. Timezone: UTC+5:30. Not expected to change over period of GSOC duration.
- Please state the timeframe (in UTC+0) when you feel most comfortable working during GSoC. Where are your time buffers?
I prefer working in mornings(9:00(UTC-3:30) to 14:00(UTC-8:30) and evenings(17:00(UTC-11:30) to 21:00(UTC-15:30)). Late nights are an option too.
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.
C++: I have executed some projects in C++ ( built a Library Management software in school).
Comfortable with STL,classes and objects, file handling and algorithm implementation.
Octave and MATLAB: I have executed (large) projects on Octave and MATLAB, collaborating with team members. Some of the projects are:
Real life Hexapod MATLAB simulation:
A youtube video for the entire project, including MATLAB simulation and hexapod parts:
Alternate solutions to the Travelling Salesman problem(project under progress):
- Please describe your experience with other programming languages.
I am comfortable working with C. Have done quite a bit of competitive programming as well, though did not like the experience(of competitive programming) much.
- Please describe your experience with being in a development team. Do you have experience working with open source or free projects?
I do not have a lot of experience working with open source projects, but have worked in a team before and would love to collaborate with the Octave development team as well to make Octave the best program for numerical computations out there. I have worked on some projects in my college as a team member, as a member of the Department of Visual Media. Collaborated working with a team to deliver a successful and enjoyable fest for college students.
- 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.
The Hexapod simulation project. My role was that of developer for the project, collaborating and working with team members.
Learning experience- Projects have taught me a lot about the software development process, the problems(sometimes) involved in debugging and how to find out the answer required to solve a given problem. Have learned that no matter the complexity or scale of the project, there is always a way to do it.
- 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.
Worked on this bug and submitted a patch. https://savannah.gnu.org/bugs/?47627#attached Working on more patches.
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
Comfortable with both.
- Mercurial or other source code management systems
Comfortable working with Git or Hg.
- Mediawiki or other wiki software
First time experience, will learn fast.
- make, gcc, gdb or other development tools
Comfortable with all these tools, working with Linux as my primary work platform for the past year.
- 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 :-)
Since I regularly use Octave for work, contributing to it would be a rewarding experience. After GSOC, I plan to stay with Octave and contribute as much as I can for its development. I also plan to push for Octave as the primary numerical computations platform used in my college and hopefully, guide some juniors too.
O: Only out of interest
- Did you ever hear about Octave before?
- If so, when and where? How far have you been involved already?
Used in school and college for projects. Used it for Image processing and computation projects.
- If not, where would you expect or advise us to do advertising?
You don't have to. I will do so gladly. Just accept my proposal and I will advertise Octave in my entire college! :D
- 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, …
The first question in this application: "Please describe yourself in three sentences."
- Please state the operating system you work with.
Ubuntu 14.04 LTS
- If you have access to more than one, please state them and the conditions under which you are granted this access.
Windows 8.1 and Windows 10. Access anytime(dual boot configuration).
- 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.
24/7. Own laptop. Complete freedom and root access to boot.
- Please describe how useful criticism looks from your point of view as committing student.
Constructive criticism is very important for the project. From the point of view of a committing student, I feel that criticism may be discouraging at times, but is needed to guide the project on the right path. Healthy criticism is fundamental to development of any project, otherwise flaws may show up later which would be very damaging for the project as well as undermine later work.
- How autonomous are you when developing:
I like to work independently on my parts of project and finish the work to perfection.
- Do you like to discuss changes intensively and not start coding until you know what you want to do?
I like to draw out a framework and start coding, then keep on filling in details as the project progresses.
- 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?
A proof of concept is useful to determine potential pitfalls and determine the correct method of solving a problem, so a good timeline may be decided upon for the same.
Y: Your task
Please refer to the Private Application submitted on the summerofcode website.