User:Sudeepam: Difference between revisions

Jump to navigation Jump to search
565 bytes removed ,  21 March 2018
Line 57: Line 57:


== E: Coding experience ==
== 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.'''


* Please describe your experience with C++, Octave or Matlab m-scripts, OpenGL and Qt.
:- '''MATLAB m-scripts:''' I am highly experienced with MATLAB m-scripts. As I have said before, A lot of my coursework assignments involve making m-scripts. Those assignments, have even asked me to make my own implementations of inbuilt MATLAB functions and I have been using that experience to contribute to Octave-Forge signal package. In addition to this, I also implement machine learning in Octave and have gained further experience of m-scripts by doing that. If selected, for GSoC 2018, I will approach my project, with m-scripts and so I consider my experience to be a big plus point.


:- '''MATLAB m-scripts:''' I am highly experienced with MATLAB m-scripts. As I have said before, A lot of my coursework assignments involve making m-scripts. Those assignments, have even asked me to make my own implementations of inbuilt MATLAB functions. For example, I have done things like making a m-script that computes modulo-N circular convolution like MATLAB's cconv function (I have been using this knowledge to contribute to Octave-Forge signal package). In addition to this, I also implement machine learning in Octave and have gained further experience of m-scripts by doing that. If selected, I will approach the project that I have decided to work on, for GSoC 2018, by writing m-scripts and so I consider my experience to be a big plus point.
:- '''C++:''' I am familiar with C++ but I have never made a formal project using it and I haven't been using it lately. The language will not be new to me and I can quickly revise it if required. I was taught C and C++ in my first year, in a course called "Software Development Fundamentals". At the time I decided to use C and not C++ for my project. I passed that subject with an 'A grade' is all I can currently say about my C++ experience.
 
:- '''C++:''' I am familiar with C++ but I have never made a formal project using it and I haven't been using it lately. I can quickly revise it if required. I was taught C and C++ in my first year, in a course called "Software Development Fundamentals". At the time I decided to use C and not C++ for my project. I passed that subject with an 'A grade' is all I can '''currently''' say about my C++ experience.


:- '''OpenGL and Qt:''' I have never used OpenGL before. I have never used Qt either but I've seen some Qt code of my friends.
:- '''OpenGL and Qt:''' I have never used OpenGL before. I have never used Qt either but I've seen some Qt code of my friends.


* Please describe your experience with other programming languages.
* '''Please describe your experience with other programming languages.'''


:- '''C:''' I am comfortable with C and have made a number of projects using it.
:- '''C:''' I am comfortable with C and have made a number of projects using it.
Line 75: Line 73:
:- '''Python:''' I am familiar with the language but I still am learning to use it effectively. I am learning it so that I can use it for Machine Learning problems if required.
:- '''Python:''' I am familiar with the language but I still am learning to use it effectively. I am learning it so that I can use it for Machine Learning problems if required.


* Please describe your experience with being in a development team. ''Do you have experience working with open source or free projects?''
* '''Please describe your experience with being in a development team. ''Do you have experience working with open source or free projects?'' '''


:-The only experience I have with working on open source and free projects is the experience that I have got by  
:-The only experience I have with working on open source and free projects is the experience that I have got by  
   a) contributing to some open source repositories for Digital Ocean's Hacktoberfest, and 
   a) contributing to some open source repositories on Github.
   b) contributing missing functions to the Octave-Forge Signal package.
   b) contributing missing functions to the Octave-Forge Signal package.
I do have the experience of working on a few projects with a team but those were small projects and we never used version control systems while making those projects.
I do have the experience of working on a few projects with a team but those were small projects and we never used version control systems while making them.


* 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 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'll assume that by 'biggest project', you mean the project which required me to play the most important roles and write a lot of code that required a lot of testing and debugging.
:-I'll assume that by 'biggest project', you mean the project which required me to play the most important roles and write a lot of code which required a lot of testing and debugging.
In this sense, my biggest project was that of making an Arduino and LDR Sensors based maze solver bot with a team of four. The bot would traverse a maze in a 'trial run' and store all the correct paths (A path that would not lead to a dead end) in its memory whenever it encountered a 'T like' condition in the maze (A condition when more that one choice of path was available). After that, in any subsequent run, the bot would traverse the maze using the stored path (which avoided dead ends) and therefore, solve the maze in a shorter amount of time.  
In this sense, my biggest project was that of making an Arduino and LDR Sensors based maze solver bot with a team of four. The bot would traverse a maze in a 'trial run' and store all the correct paths (A path that would not lead to a dead end) in its memory whenever it encountered a 'T like' condition in the maze (A condition when more that one choice of path was available). After that, in any subsequent run, the bot would traverse the maze using the stored path (which avoided dead ends) and therefore, solve the maze in a shorter amount of time.  


Line 91: Line 89:
These were my primary roles as the leader. My technical role was to write the code or to make a 'functioning brain' of the bot. Roles of my team mates were to design the hardware, design testing tracks etc.
These were my primary roles as the leader. My technical role was to write the code or to make a 'functioning brain' of the bot. Roles of my team mates were to design the hardware, design testing tracks etc.


I am proud to say that we were able to successfully complete the bot in time and that the bot gave us expected results. I am also proud of the fact that with the technical skills I gained, I am able to help my juniors at my university with their maze solver bot codes. What disappoints me is that, performance of our bot could have been improved if only we had used better quality hardware. Unfortunately, that wasn't an option for us since we had to pay for the hardware out of our own pockets and we only had limited money on us.
I am proud to say that we were able to successfully complete the bot in time and that the bot gave us expected results. I am also proud of the fact that with the technical skills I gained, I am able to help my juniors at the university with their maze solver bots. What disappoints me is that, performance of our bot could have been improved if only we had used better quality hardware. Unfortunately, that wasn't an option for us since we had to pay for the hardware out of our own pockets and we only had limited money on us.


Some soft skills I learned from this project were..
Some soft skills I learned from this project were..
Line 99: Line 97:
   a) Technicalities of Arduino, LDR Sensors, motor drivers etc.
   a) Technicalities of Arduino, LDR Sensors, motor drivers etc.
   b) Technicalities of writing an Arduino/C code.
   b) Technicalities of writing an Arduino/C code.
another very important thing that I learned was '''never skip comments while writing code.'''


* 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.''
* '''Please state the commits and patches you already contributed to Octave.'''


:- I've contributed a patch for the db2pow function of the signals package.
:- I've contributed a patch for the db2pow function of the signals package.
:- I've contributed a patch for the pow2db function of the signals package.
:- I've contributed a patch for the pow2db function of the signals package.
:- I have also helped review the cconv function and suggested a faster algorithm for the same.
:- I have also helped review the cconv function by suggesting a faster algorithm. My suggestion had been considered and implemented.


== F: Feeling fine ==
== F: Feeling fine ==
98

edits

Navigation menu