User:Dildar Sk
Jump to navigation
Jump to search
Public application[edit]
A: An introduction[edit]
- Please describe yourself in three sentences, one of them regarding your current studies.
- My name is Dildar Sk and I have profound interest in technology.
- I am a third-year/Junior student at Jadavpur University,Kolkata, West Bengal, India.
- I am majoring in Bachelor of Engineering in Information Technology.
- I can speak and communicate well in English,Hindi and Bengali.
- What's your overall background?
- I love mathematics and programming.
- I have a good understanding of the process of Software Engineering, statistics, Linear Algebra, calculus, programming tools.
- I am learning in-depth about Information Retrieval, Internet of Things and Digital Image Processing in my current semester.
- I have a good understanding in the processes of Software Engineering, Statistics, Linear Algebra, Calculus, and Programming Tools.
- Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?
- I am doing competitive coding and college stuffs since last 2.5 years and I haven't got much exposure to open source world.
- I think Google Summer of Code is a great opportunity for me to jumpstart my experience with the open source community.
- I hope to gain knowledge and experience working in a professional environment while meeting new people in the process.
- Please also describe your previous experience with the GSoC, if any.
- This is first time I am going for GSoC.
- Why are you choosing Octave?
- When last year I started machine learning,I got in touch with Octave.It was superb experience.So I thought to do something for it.
- Octave is the open source alternative for MATLAB, and I like working with Octave.
- Also, Octave has a great community of developers. They are welcoming and motivating.
C: Contact[edit]
- Please state the (unique and identical where possible) nick you use on IRC and any other communication channel related to Octave.
- Which time zone do you live in? Will that change over GSoC duration?
- I live in UTC+05:30.
- No, the time zone will not change over GSoC duration.
- But if it requires,I can work in any timezone.
- Please state the timeframe (in UTC+0) when you feel most comfortable working during GSoC. Where are your time buffers?
- I can work from 4:30 AM - 1:30 PM (in UTC+0)
- I can also work from 3:00 PM-6:00 PM(in UTC+0) if my project requires it.
- Actually I can work in any time if my project requires.
E: Coding experience[edit]
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 4 years of coding experience in C & C++. I have a thorough undertanding of classes and Object Oriented Programming in C++.
- Octave or Matlab m-scripts
- I started using Octave for my online Machine Learning Course by Andrew Ng
- I also use Matlab Image Processing Toolbox for my Digital Image Processing Course.
- OpenGL and Qt
- I am a beginner in QT programming.
- I am a beginner in OpenGL.
- C++
- Please describe your experience with other programming languages.
- Python
- I am good in Python. I have also learned to use some mathematical libraries like numpy and pandas.
- Python
- Java
- I am intermediate in Java.
- Java
- Front-end Web development
- HTML,CSS,JavaScipt(Angular.js,Node.js)
- Front-end Web development
- Back-end Web development
- PHP,SQL
- Back-end Web development
- Please describe your experience with being in a development team.
- Yes,I have experience with being in developement team.With My classmates we developed many web sites.
- In case of open source,I got in touch with many orgs.Sometimes I just surfed around many projects in Github.
Github id: hodorNight [3] ,dextar101010 [4] I worked under Coala,Octave most,to say.
- 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 biggest project I did was a website building.
During that project,I faced many problems from which I learned many thing. Like code reusablity,design of code etc.
- I was main developer in that project.
- Please state the commits and patches you already contributed to Octave.
- As I am new to octave I contributed very less.
But in the main IRC channel #octave I help many people(mostly newcomers)
- Bug reported by me:
- [5] (bug regarding auto-completion)
- [6] (Opened a important bug)
- [7] (Opened bug got as additional topic in Oct-conf)
- [8] (Opened a bug related to pager which is solved now)
- [9] (Reported a warning/error bug (fixed by me))
- [10] (Asked for a feature,now implemented)
- [11] (Reported bug for factor.m)(fixed by my patch)
- [12] (reported bug for magic.m)(fixed by my patch)
- [13] (reported bug for nextpow2.m)(fixed)
- [14] (Requested a feature)
- [15] (Reported a loophole)
- [16] (Reported bug)(fixed)
- [17] (base2dec: missing a warning) (fixed)
- [18] (bitor.m)
- [19] (bitxor.m)
- [20] (or)(fixed)
- [21] (bitset.m)
- [22] (performance)
- [23] (different result than MATLAB)(fixed)
- [24] (different result log1p)
- [25] (pie : fails for infinite or no input)(fixed)
- [26]
- [27] (area)
- Patch submitted:
- [28] (Submitted a patch/npermutek function)
- [29] (patch for ismissing function)
- [30] (patch for rms function of signal package)
- [31] (patch for peak2rms function of signal package)
- [32] (Submitted solution/patch (Merge now))
- [33] (submitted patch for bug #53425)(fixed)
- [34] (Submitted patch for bug #53441)
- [35] (Submitted patch for bug #53463)
- [36] (Submitted patch for bug #53472)
- [37] (submitted patch for bug #53477)
- [38] (I submitted a patch here,which admin maybe ignored)
F: Feeling fine[edit]
- Please describe (in short) your experience with the following tools:
- IRC and mailing lists
- I really prefer IRC as a mode of communication.I use them frequently and take help from there if I face any problems.
- My registered IRC nick is hodor123456.I use mailing list no less than IRC.There is an account in nabble,Dildar Sk
- IRC and mailing lists
- Mercurial or other source code management systems
- I am very comfortable using git. I have started learning Mercurial and do understand the basics of generating a patch in Octave.
- Mediawiki or other wiki software
- I started using Mediawiki when I started writing this application. I am comfortable contributing to wiki pages.
- make, gcc, gdb or other development tools
- I am very comfortable in using make tool, gcc, and gdb. Furthermore, I am always pumped up in learning new tools if my project demands for it (or even just out of curiosity).
- Mercurial or other source code management systems
- What will make you actively stay in our community after this GSoC is over?
- I see lots of places where I can help.I will keep active in #octave IRC channel to help people.
- And certainly I will be always upto dated with mailing lists and bug tracker.
- There I will also implement missing functions.
O: Only out of interest[edit]
- Did you ever hear about Octave before?
- Yes, I have heard of GNU Octave before.
- If so, when and where? How far have you been involved already?
- I started using Octave for my online Machine Learning Course by Andrew Ng in Coursera.
- What was the first question concerning Octave you could not find an answer to rather quickly?
- Complete steps to build Octave from source. The reason for that is that there is not much in the Octave docs.
- It is overwhelming as there exists more than one wiki explaining similar steps in various ways.
- It might be better to update the Octave docs frequently with latest installation instructions.
- Here is what the octave docs show now: link.
- Apart from this, the Octave manual has been very helpful with useful examples to understand concepts.
P: Prerequisites[edit]
- Please state the operating system you work with.
- Ubuntu 16.10 and Windows 8.1
- If you have access to more than one, please state them and the conditions under which you are granted this access.
- I have complete access to both the operating systems. However, I prefer using Ubuntu for software development.
- Please estimate an average time per day you will be able to access
- an internet connection
- 24X7
- a computer
- 24X7
- a computer with your progressing work on
- 24X7
- an internet connection
- Please describe the degree to which you can install new software on computers you have access to.
- I have complete root/administrator access.
- If you are asking about how good I am at installing softwares,then,yes I have installed every softwares without a problem.
S: Self-assessment[edit]
- Please describe how useful criticism looks from your point of view as committing student.
- I think constructive criticism plays a vital role in developing a good product.
- I like receiving criticism because it means that my work matters to someone and I take that as motivation to make my work better.
- How autonomous are you when developing:
- While assessing myself I observed that I try to code first and then try to find bugs and remove the inefficiencies in my code.
- I am quite autonomous and can start work on my own.
But if I get to know what should I do,where to start or a hints,I do work much smoother and quicker.
- I think this methodology is what makes me learn more. I understand this might turn out to be a slow process, but I think this is what makes me more experienced.
- Thomas Edison said, " I haven't failed, I've just found 10,000 ways that won't work. "
- With that said, I will also absolutely make sure that I take regular weekly feedback from my mentors so that I don't end up in a wrong path.
Y: Your task[edit]
- Did you select a task from our list of proposals and ideas?
- Yes, I would like to work on the project: "Command line suggestion feature" [40]
- Please provide a rough estimated timeline for your work on the task.
- During Google Summer of Code, I would work 60 hours per week. This is my rough estimated timeline:
- community bonding period (Before May 14):
- i) I will try to refresh my idea of Octave's codebase first.Start to know the
- other guys,developer and mentors.Will start to interacting with them.
- ii) I will study readline library thoroughly.Will try to strengthen knowledge
- on GDB,make auto-tool.
- iii) Will try to implement some missing functions which is
- not available in Octave but on MATLAB.
- Phase 1 (May14-june15)
- week 1 (May 14-21):
- Week 2 (May21-28):
- Week 3 & 4 (May 28-june 11)
- week 3 (May 28-june 4):
- Week 4 (june 5-11):
- June 11-15 :
Phase 1 evaluation.
- Phase 2 (June 16-july 13)
- Week 5 (june 16-june22):
- Phase 2 (June 16-july 13)
- Before this everything will have implemented for both GUI and CLI but this is only for GUI.
- Will implement a pop-up using QT to auto-complete.User will be able to interact with a pop
- up of a multiple choice,if he press double tab.
- I will implement if there is no auto-completion available it will show "No Completion Available"
- Week 6 (June 22-29):
- A frequency based(No of times it's used) hash map will be implemented.
- This will be another parameter choosing the closest between multiple choice('acox' between 'acos' and 'acot').
- Different users will get difference suggestion based on this parameter.
- Week 7 (June 30-july 6):
- frequency base hash map parameter will be used in all 3 implementations.
- Creating a API to select any of 3 mechanism according to user choice and requirement.
- Week 8 (July 7-13):
- i) Writing documentations.
- ii)Writing tests.
- Phase 2 evaluation (July 9-13)
- Final phase (July 14-Aug 14)
- Week 9 (July 15-21):
- Implementing a pop-up based on QT which allow to choose number of suggestions in
- the pop-up.It will be either top-1,top-2,top-3,top-5.
- Week 9 (July 15-21):
- Week 10 (July 22-29):
- i) Checking if something is left and implementing that.
- ii) Testing the pop-up.Testing other implementation.
- iii) writing documentation.
- Week 10 (July 22-29):
- Week 11 (July 30-Aug 6):
- Target:selecting default implementation.
- Comparing the efficiency of Trie,Hash and LCS based.
- Test will be made on different sizes same data.
- Week 12 (Aug 7-14):
- i) Testing if there is any build issue.
- ii) Writing documentations.
- iii) Checking if there need something to implement.
- Week 12 (Aug 7-14):
- iv) Final submission of work product.
- This is a very rough timeline. The exact steps will become clearer when I do some more discussion with the mentors.