https://wiki.octave.org/wiki/api.php?action=feedcontributions&user=Ayushd&feedformat=atomOctave - User contributions [en]2024-03-28T20:46:54ZUser contributionsMediaWiki 1.39.2https://wiki.octave.org/wiki/index.php?title=User:Ayushd&diff=12669User:Ayushd2020-02-21T19:21:06Z<p>Ayushd: Intro to Hello World</p>
<hr />
<div>==Hello World==<br />
Hi. I am Ayush Dwivedi, a Computer Science and Engineering undergrad who loves Mathematics and Theoretical Physics.<br />
I want to participate in the Google Summer of Code to learn and evolve as a Programmer and a scientist.<br />
This is my first time applying for a SOC. I chose Octave because Octave is everything I want to achieve through programming and I think it is the most ambitious Open Source initiative since I always found it weird that Matlab is proprietary.<br />
I am interested in how we use computers to solve problems of Mathematics and Physics. Octave is fascinating since it is a Mathematical programming language aside from that Programming language design has always been an area of keen interest for me.<br />
<br />
== Contact ==<br />
My IRC freenode nick is: '''oneiro-naut'''. I live in India, time zone is Indian Standard Time(IST = UTC+05:30). <br />
I usually code around 9.00 to 23.00 in that 19.00 to 23.00 are my peak hours(I am mostly active after 18.00 because of college).<br />
<br />
== My Coding experience ==<br />
I have done some projects in C++ using the SDL2 library due to my interest in simulating and visualizing Physics(and Mathematics) using GUI libraries. I have mostly programmed in C which includes writing a simple GNU Nano like text editor and a '''Bash like Linux Shell''' without using any external library(main goal is to implement '''my own Shell Interpreter''').<br />
Interpreter design and state machines implementations have been a part of my projects in C++ which includes writing simple game sprite editors and minimal game engine. I have very basic knowledge of GUI development using Qt and little knowledge of OpenGL. I have never worked in a development team and have no experience in open source contribution. My biggest project till now is writing my own Unix Shell. I learned many concepts and developed many habits. I am still working on it. I learned to borrow code from open source repositories and use online developer communities for help and suggestions because of it. As of now I haven't contributed anything to the Octave project as I am still exploring and experimenting with it. I have aim to fix bugs and improve '''classdef''' and '''OOP support''' in Octave project.<br />
<br />
== My experience with Community platforms ==<br />
I am quite active on community platforms like IRC, discord and have subscribed to developer mailing lists in the past. <br />
<br />
== Experience and familiarity with Developer tools ==<br />
I use git quite often and am comfortable using it. Mercurial is relatively new for me but I am learning it as I explore more about the Octave project. I have never used Mediawiki neither have I contributed to any documentation before. Since I have programmed in C and C++ mostly, I have used GNU build and debugging tools like make,gcc and gdb at some point or the other. I have experience of using memory debugging tool '''Valgrind''' as well. <br />
When it comes to Octave project there is always going to be new things to learn and work on since it's all Mathematical here and Mathematics has no end. And I wish Octave to be as accepted and widely used as Matlab and even beyond that. <br />
<br />
<br />
== How I got to know about Octave ==<br />
In college we have to use Matlab quite frequently for signal plotting and analysis. Therefore I have some experience of m-scripting already. I have known about Octave for quite some time now mainly because of my interest in Mathematical tools and knew it as the Open Source alternative to Matlab, which means a lot for me since I am a Linux user. As of now I have used Octave for completing my college assignments. But recently I separately built it from source so that I can start understanding the actual code behind the project.<br />
<br />
== Prerequisites ==<br />
I use Arch-Linux 64-bit linux distribution as my development OS.<br />
Currently I have limited access to internet which is roughly 1 GB of data transfer per day.<br />
<br />
== Self-assessment ==<br />
<br />
Criticism can feel discouraging at times but is a really important source of learning and improvement since knowing our mistakes is the key to evolve. As of now I have always worked alone but contributing to a large project and working in a community is something I always wanted to do. Before I start to work upon anything I usually take a lot of time just designing a basic flow of what I want to achieve on paper and when it comes to projects I will take more time to read the pre-existing code than coding something myself. And as a part of my understanding process I give more time community discussion to get my concepts and ideas right before I actually implement them. But when I will actually start to code I will not shy away from iterating over and over on something I am working on. At times when I was writing my Linux shell I had changed the entire skeleton of the project discarding entirely what I was doing previously and I did that many times. It was necessary to make it work but more than that it was necessary to make things work resulting from my own ideas.<br />
<br />
== My GSOC Idea ==<br />
My Idea for a GSoC project:(it's not specifically listed in the idealist section of the getting started page)<br />
<ul><br />
<li>'''Improve classdef support in Octave.'''(there is a list of missing functionality and associated bugs which is not there in Octave but is supported in Matlab)</li><br />
</ul><br />
Currently these 3 features of classdef are yet to be implemented in Octave:<br />
<ol><br />
<li>enumeration</li><br />
<li>events and listeners</li><br />
<li>Property Validation Functions</li><br />
</ol><br />
<br />
Implementing any of these 3 features will be a milestone for me.<br />
<br />
Link to my Project proposal is: [[]]<br />
<br />
Estimated timeline for my tasks and related sub-tasks is:</div>Ayushdhttps://wiki.octave.org/wiki/index.php?title=User:Ayushd&diff=12668User:Ayushd2020-02-21T19:15:55Z<p>Ayushd: Created user-wiki page</p>
<hr />
<div>==Introduction ==<br />
Hi. I am Ayush Dwivedi, a Computer Science and Engineering undergrad who loves Mathematics and Theoretical Physics.<br />
I want to participate in the Google Summer of Code to learn and evolve as a Programmer and a scientist.<br />
This is my first time applying for a SOC. I chose Octave because Octave is everything I want to achieve through programming and I think it is the most ambitious Open Source initiative since I always found it weird that Matlab is proprietary.<br />
I am interested in how we use computers to solve problems of Mathematics and Physics. Octave is fascinating since it is a Mathematical programming language aside from that Programming language design has always been an area of keen interest for me.<br />
<br />
== Contact ==<br />
My IRC freenode nick is: '''oneiro-naut'''. I live in India, time zone is Indian Standard Time(IST = UTC+05:30). <br />
I usually code around 9.00 to 23.00 in that 19.00 to 23.00 are my peak hours(I am mostly active after 18.00 because of college).<br />
<br />
== My Coding experience ==<br />
I have done some projects in C++ using the SDL2 library due to my interest in simulating and visualizing Physics(and Mathematics) using GUI libraries. I have mostly programmed in C which includes writing a simple GNU Nano like text editor and a '''Bash like Linux Shell''' without using any external library(main goal is to implement '''my own Shell Interpreter''').<br />
Interpreter design and state machines implementations have been a part of my projects in C++ which includes writing simple game sprite editors and minimal game engine. I have very basic knowledge of GUI development using Qt and little knowledge of OpenGL. I have never worked in a development team and have no experience in open source contribution. My biggest project till now is writing my own Unix Shell. I learned many concepts and developed many habits. I am still working on it. I learned to borrow code from open source repositories and use online developer communities for help and suggestions because of it. As of now I haven't contributed anything to the Octave project as I am still exploring and experimenting with it. I have aim to fix bugs and improve '''classdef''' and OOP support in Octave project.<br />
<br />
== My experience with Community platforms ==<br />
I am quite active on community platforms like IRC, discord and have subscribed to developer mailing lists in the past. <br />
<br />
== Experience and familiarity with Developer tools ==<br />
I use git quite often and am comfortable using it. Mercurial is relatively new for me but I am learning it as I explore more about the Octave project. I have never used Mediawiki neither have I contributed to any documentation before. Since I have programmed in C and C++ mostly, I have used GNU build and debugging tools like make,gcc and gdb at some point or the other. I have experience of using memory debugging tool '''Valgrind''' as well. <br />
When it comes to Octave project there is always going to be new things to learn and work on since it's all Mathematical here and Mathematics has no end. And I wish Octave to be as accepted and widely used as Matlab and even beyond that. <br />
<br />
<br />
== How I got to know about Octave ==<br />
In college we have to use Matlab quite frequently for signal plotting and analysis. Therefore I have some experience of m-scripting already. I have known about Octave for quite some time now mainly because of my interest in Mathematical tools and knew it as the Open Source alternative to Matlab, which means a lot for me since I am a Linux user. As of now I have used Octave for completing my college assignments. But recently I separately built it from source so that I can start understanding the actual code behind the project.<br />
<br />
== Prerequisites ==<br />
I use Arch-Linux 64-bit linux distribution as my development OS.<br />
Currently I have limited access to internet which is roughly 1 GB of data transfer per day.<br />
<br />
== Self-assessment ==<br />
<br />
Criticism can feel discouraging at times but is a really important source of learning and improvement since knowing our mistakes is the key to evolve. As of now I have always worked alone but contributing to a large project and working in a community is something I always wanted to do. Before I start to work upon anything I usually take a lot of time just designing a basic flow of what I want to achieve on paper and when it comes to projects I will take more time to read the pre-existing code than coding something myself. And as a part of my understanding process I give more time community discussion to get my concepts and ideas right before I actually implement them. But when I will actually start to code I will not shy away from iterating over and over on something I am working on. At times when I was writing my Linux shell I had changed the entire skeleton of the project discarding entirely what I was doing previously and I did that many times. It was necessary to make it work but more than that it was necessary to make things work resulting from my own ideas.<br />
<br />
== My GSOC Idea ==<br />
My Idea for a GSoC project:(it's not specifically listed in the idealist section of the getting started page)<br />
<ul><br />
<li>'''Improve classdef support in Octave.'''(there is a list of missing functionality and associated bugs which is not there in Octave but is supported in Matlab)</li><br />
</ul><br />
Currently these 3 features of classdef are yet to be implemented in Octave:<br />
<ol><br />
<li>enumeration</li><br />
<li>events and listeners</li><br />
<li>Property Validation Functions</li><br />
</ol><br />
<br />
Implementing any of these 3 features will be a milestone for me.<br />
<br />
Link to my Project proposal is: [[]]<br />
<br />
Estimated timeline for my tasks and related sub-tasks is:</div>Ayushd