User:Sandeepmv

From Octave
Jump to navigation Jump to search

A: An introduction

  • I am Sandeep Venkat Manthi. I like to solve problems and write code. I am a self motivated person who enjoys his work and I am a fourth year post graduate student at NIT Rourkela (India) in Electronics and Communication engineering.
    • I can speak fluently in English, Hindi and Telugu.
    • I am a fourth year student in Electronics and Communications and my main area of research is image processing. However, I have completed courses in soft computing and adaptive signal processing.
  • I like to code and I want to contribute to the open source community that produces most of the software tools that I use.
  • Octave is a brilliant project to work on as it is challenging and involves a good deal of pure mathematics. I am interested in Octave because of my experience with it.

C: Contact

  • sunnyv is my nick on Octave IRC channel.
  • My time zone is UTC + 5:30. I live in India.
  • I usually code between 12.30 to 18.30 UTC and I start at 8.00 UTC during weekends and few days.

E: Coding experience

  • I have 2 plus years of experience in C++ and Matlab code. I mainly write programs for my Academics and research projects. I have also worked on few C++ projects on freelance websites like Odesk.
  • I am good with PHP and Python and have worked on a few web design projects as a freelancer.
  • I do not have any experience on working with open source projects or free projects. I hope to change that in the coming few days.
  • The biggest project I have worked on is on my internship with ECIL, Hyderabad. I have written C code for processing the data from E1 data converter chips in an embedded system that operated a multichannel radio. The device was called E1-Radio Interconnect. I was a part of team of 3 members which developed the program for data management in a FPGA which handled the routing of radio channels. The code which I wrote was 320 lines long and it managed the RCMS PCM radio stream coming from E1 data converter chip in the device. The RCMS channel is used to trigger alarms or switches remotely.
  • I have contributed 3D coordinate system functions for Geodesy in mapping toolbox for Octave.[1]

F: Feeling fine

  • Experience with the following tools
    • I am fine with IRC and Mailing lists.
    • I am comfortable working with Mercurial. I have installed it in my Ubuntu system and its working well.
    • I am familiar with MediaWiki and I am comfortable using it.
    • I had a little difficulty with the compilers at first, but after getting help from IRC channel, I was able to resolve all the dependency errors that were halting my build.
  • A proper guide for beginners is what I would like to have. I will be happy to help create it. I find the community exciting and I will contribute whenever I can to the Octave Community even after GSoC.

O: Only out of interest

  • Yes. Our institution uses Octave on http://www.compileonline.com/execute_matlab_online.php to help beginners grasp the basic concepts of Matlab.
    • I expect Octave to advertise in the educational institutions as a free and open source alternative to Matlab.
  • My first problem with Octave was that I was not able to build it in my first go. A lot of dependencies were missing and the information on Ubuntu forums was not enough to install all the dependencies required to build Octave. A good person helped me out on IRC after I tried to resolve it for a while. I think you should include a page which lists down all the dependencies required for different operating systems. This was the link that helped me solve the problem: http://pastebin.com/R9B4A1i8

P: Prerequisites

  • I work with Ubuntu and Windows 8. I run a VM with Ubuntu 12.04 inside windows 8.
    • I have administrator access to the system.
  • I will be able to access
    • internet for 14 hours a day.
    • a computer for 24 hours a day.
    • a computer for my progressing work for 24 hours a day.
  • I am the owner of the computer and I can install any software which is supported by my operating system.

S: Self-assessment

  • I always view constructive criticism as a positive sign towards better development of a project. I respect opinions and if the criticism contains useful facts, I will always be happy to incorporate them.
  • How autonomous are you when developing?
    • Do you like to discuss changes intensively and not start coding until you know what you want to do?(YES)
    • 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?(NO)

Y: Your task

  • I have selected the following task from GSoC projects page[2].
    • I would like to complete the functions for Coordinate systems, Geodesy and Projections for Mapping Package in Octave Forge. The list of missing functions in the mapping package are grouped by me here [3]. I have already contributed the 3D coordinate functions to this end[4].
  • Rough time estimates:
    • Detailed Schedule: [5]
    • Week 0 (May 19 to May 26): Familiarizing with Octave code. Complete the tests for 3D Coordinate system functions that I have already implemented.
    • Week 1 to Week 4 (June 3 to June 25): Complete the implementation of missing functions for Modelling the Earth and also the missing functions in lengths and units. Complete the tests and submit 1. Modelling the Earth functions, 2. Lengths and units, 3. 3D Coordinate system functions for mid term evaluation.
    • Week 5 to Week 7 (June 26 to July 14): Complete the implementation and testing of missing functions in Great Circles Geodesics and Rhumb lines in week 5, Missing functions in Small Circles, Ellipses and Spheres in week 6 and Zones, lunes, Quadrangles and other area functions in Week 7.
    • Week 8 to Week 9 (July 15 to July 29): Complete the implementation and testing of missing functions in Coordinate systems.
    • By Week 12 (By August 18): Fixing bugs, code clean up and Making the entire code Matlab compatible. Write remaining tests and Documentation. Code clean up and finalization. End of GSOC.
    • After GSOC: Maintenance and further development of Mapping Package in Octave Forge.

A Buffer of two weeks has been kept for any unpredictable delay. I have planned a 40 hour work schedule for every week. I will be unavailable for 4 days during the entire GSoC period due to personal commitments.